T嵌入式技术及应用(STM32CubeMX版) 代码 ask16Main.docx
《T嵌入式技术及应用(STM32CubeMX版) 代码 ask16Main.docx》由会员分享,可在线阅读,更多相关《T嵌入式技术及应用(STM32CubeMX版) 代码 ask16Main.docx(2页珍藏版)》请在第一文库网上搜索。
1、1234567891011121314151617181920212223242526272829303132333435在任务16中,main,c文件中所编写用户应用程序如下,读者只需将下列代码按照程序编写规范的要求添加至main.c文件的对应位置处,就得到任务16的应用程序。inc1ude,stdio.h8inc1udestring,h”inc1udeSeria1,h”uint8_tComStr3=0x55,0xaa;命令的部分代码intmain(void)(char*fp;uint16_tva1;HA1_UART_Receive_ITGhuart1,&aRxBuf,1);*使能串口1接收
2、中断,并指定接收缓冲区和接收数据长度*/whi1e(1)(if(_HA1_UART_GET_F1AG(&huart1,UART_F1AG_ID1E)!=RESET)*判断是否是空闲中断(ID1E)发生*/(if(fp=strstr(constchar*)UserRxBuf,(constchar*)ComStr)!=NU11)收到0x55aaif(*(fp+4)=0x5a)检查是否收到了帧尾0x5a收到了帧尾0x5ava1=(uint16_t)*(fp+2)8(*(fp+3);/*将接收数据拼成DA转换值*/if(va14096)/*检查DA值的范围*/*在04095之间,则设置DA值,并启动D
3、A转换*/PrintfC当前输入数据为0x,即刎,输出电压为%.2fVrn”,va1,va1,3.3*va14095);HA1_DAC_SetVa1ue(hdac,DAC_CHANNE1_1,DAC_A1IGN_12B_R,va1);*设置DA转换值*/HA1_DAC_Start(&hdac,DAC_CHANNE1_1);/*启动DA转换*/)e1se*过大,则提示*/printf(当前输入数据为0x%x,即%d,输入数据过大!rn”,va1,va1);)e1se/*没收到数据尾0x5a*/Printf(输入非法!数据尾不是5a!rn*);)e1se/*没收到数据头*/Printf(输入非法!数据头不是55aa!rn*);)memset(UserRxBuf,0,UserRxCnt);串口接收缓冲区清0USerRXCnt=0;串口接收计数值清0363738394041424344454647484950_HA,_UART_C1EAR_ID1EF1AG(huart1);/*清除TD1E中断请求标志*/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- T嵌入式技术及应用STM32CubeMX版 代码 ask16Main 嵌入式 技术 应用 STM32CubeMX