基于单片机的多路数据采集系统设计论文 下载本文

内容发布更新时间 : 2024/5/13 23:46:07星期一 下面是文章的全部内容请认真阅读。

开始 初始化 启动定时器1 开中断 N 判断是否有按键按下 调用一个Y Display()在LED再根据扫描到的键盘号,发送相应的数据给串口。 缟馭篩凉。 图6主程序

数据发送到串行口 当T1=0时,则传送结束 TI=0 瑣钋濺暧惲锟10

7 向串口发送数据子程序putc_to_serialport()

开始 显示个位 显示十分位 显示百分位 显示小数点 结束

图8 LED显示程序Display_Result(int d)

11

开始 先将低4位置1选定4行 然后判断该按键发生在哪一是否有按键N 按下 Y KeyNo=16 将列数赋给将高4位置1选定4列 再判断发生在那一行 0—3行分别附加起始值0,4,8,12 返回 图9键盘扫描子程序Keys_Scan()

鎦诗涇艳损楼紲鯗餳類。12

开始 接受数据 对数据进行相关处理 调用Display_Result(m)

图10 主机串口接受中断子程序Serial_INT() interrupt 4

4.3 从机程序设计

该部分的程序包括一个主程序、三个子程序,三个子程序分别为从机串口接收中断函数Serial_INT() interrupt 4、向串口发送数据子程序putc_to_SerialPort(uchar c)和模数转换子程序ADCON。串口发送数据子程序如图7栉缏歐锄棗鈕种鵑瑶锬。 开始 初始化 启动定时器1 开中断 调用Adcon() 结束 。

图11 主程序

13

开始 选定通道号 开始转换 转换结束将得到的数据发送给串口 结束

图12 模数转换子程序ADCON

开始 接收串口数据 判断接受到的数据N 第4位是否为1 Y 选定循环采集方按选定的通道号采集 式 结束 图13 从机串口接收中断函数Serial_INT() interrupt 4

14