12.4 项目的软件程序设计
2025年09月21日
12.4 项目的软件程序设计
由于晶振频率为11.0592MHz,可以计算出机器周期:
机器周期=12/晶振频率=12/11.0592MHz=1μs
采用定时器T1工作方式1,通过设置M1M0=10,用于8位自动重载模式产生波特率,选定波特率为1200Bd。设置串行口工作方式SM0SM1=01,启动T1工作。
对串行通信发送和接收时采用查询方式,串行接收数据时,单片机不断监测RI标志位是否接收到数据,一旦有数据接收,则将接收到的数据传送到P0口,驱动LED点亮和熄灭。串行发送数据时,单片机将接收到的数据回传到PC端。为了能够在PC端看到单片机发出的数据,借助串口调试助手软件进行数据观察与分析,如图12-6所示。
图12-6 串口调试助手运行界面
在使用串口助手时,一定要保证PC设置与单片机参数统一,尤其波特率参数设置,否则数据通信将会出错。项目串行通信程序流程如图12-7所示。
在图12-7程序流程图的基础上书写串行通信程序代码如下:
图12-7 串行通信程序流程图
通过单片机开发环境Keil C51,建立工程sericom文件,并将上述代码在Keil环境下进行编译,程序成功编译结果如图12-8所示。同时在创建工程路径sericom文件夹下生成一个后缀名为.hex文件,供下载软件将生成的.hex文件下载到单片机中。
图12-8 程序成功编译结果图