串口显示
来源:互联网 发布:php网站提权 编辑:程序博客网 时间:2024/06/04 09:41
#include<reg52.h>#include "delay.h"#include "1602.h"unsigned char str[10];unsigned char Temp; //定义临时变量unsigned char i = 0; void uart_init() { SCON = 0x50;//设置串口方式1,打开允许接受 //SMO = 0; SM1 = 1;REN = 1; TMOD |= 0x20;//设置定时器1为工作方式2 TH1 = 0xfd;//9600 //ET1 = 1; //打开定时器中断 TR1 = 1; //打开定时器 EA = 1; } void uart_send_byte(unsigned char byte) { SBUF = byte; //TI位自动置1,手动清0 while(!TI);//while(TI != 1); TI = 0; } void uart_send_string(unsigned char *str) { while(*str != '\0') { SBUF = *str; str++; while(!TI); TI = 0; } }/* char * uart_rec_string(unsigned char *str) { // unsigned char str[10]; unsigned char i; for(i = 0; i < 3; i++) { str[i] = SBUF; } str[i] = '\0'; return str; } */ void main() { //unsigned char temp; uart_init(); LCD_Init(); ES = 1; //打开串口中断 while(1) { /* //uart_send_byte(0x61); //delay_ms(5); if(RI) { if(SBUF) { // uart_send_string("i recevied is:"); uart_send_byte(SBUF); // uart_send_string("\r\n"); } RI = 0; } if(TI) { TI = 0; } */ } }void UART_SER (void) interrupt 4 //串行中断服务程序{ if(RI) //判断是接收中断产生 { RI=0; //标志位清零 Temp=SBUF; //读入缓冲区的值 P1=Temp; if(i < 10) { str[i] = Temp; i++; } if(i == 9) { str[i] = '\0'; LCD_Write_String(0,0,str); } //把值输出到P1口,用于观察 SBUF=Temp; //把接收到的值再发回电脑端 } if(TI) //如果是发送标志位,清零 TI=0;}
0 0
- 串口显示
- 串口显示
- 串口显示字符
- Arduino串口数字显示
- Arduino串口显示文字
- cd4094串口扫描数码管显示
- 温度传感器18B20(串口显示)
- VB显示可用串口程序
- 12864液晶串口图片显示
- 用串口UART0显示时钟
- 串口GPS显示坐标信息
- 串口通信中获得可用串口使用combobox控件显示
- 串口读取磁条信息显示不正常!!!
- 串口收发即时显示的效率问题
- 带波形显示的串口调试工具
- DS18B20温度传感器+12864液晶串口显示
- 串口显示乱码的原因总结
- 按键+串口修改时间(数码管显示)
- Java 并发工具箱之concurrent包
- python3.5 运行pip报错
- 开博小记
- MyBatis Generator 源码分析
- Leetcode-Algorithms Add Two Numbers
- 串口显示
- 初见 nodejs
- UML系列图--用例图
- 34. Search for a Range
- nodejs 的基本使用
- Spring学习笔记专题一
- 如何正确搭建能远程访问你的SVN服务器(亲测有效)
- Qt for Android获取手机热点开关状态
- 时钟问题造成的hive运行错误