標題:
51單片機串口發(fā)送漢字程序
[打印本頁]
作者:
huangminggang
時間:
2018-11-25 16:15
標題:
51單片機串口發(fā)送漢字程序
#include <reg52.h>
#include <stdio.h>
#define uint unsigned int
#define uchar unsigned char
//毫秒級延時函數(shù)定義
void delay(uint z)
{
uint x,y;
for(x = z; x > 0; x--)
for(y = 114; y > 0 ; y--);
}
//串口初始化
void UARTInit()
{
SM0 = 0; SM1 = 1;//串口工作方式1,8位UART波特率可變
TR1 = 1;//啟動定時器1
TMOD |= 0x20;//定時器1,工作模式2 8位自動重裝
TH1 = 0xfd;
TL1 = 0xfd;//設置比特率9600
}
void main()
{
UARTInit(); //串口初始化
while(1)
{
TI = 1;//發(fā)送請求標志位
puts("大家好!歡迎學習單片機");//發(fā)送的漢字
while(!TI);//判斷是否發(fā)送完成 發(fā)送完成出循環(huán)
TI = 0;
delay(1000);//延遲1秒
}
}
作者:
ssk7793
時間:
2018-11-26 13:08
不錯。簡單明了。有空測試一下
作者:
夢園心田
時間:
2019-1-22 01:37
沒問題這個代碼,不行可以用printf
作者:
bhjyqjs
時間:
2019-1-22 09:08
測試過了,好用!不要用stc-isp內置的串口助手,會出現(xiàn)亂碼!
作者:
2236744811
時間:
2021-7-13 09:02
為什么串口初始化不用打開接收位REN=1就可以接收發(fā)送的文字?
作者:
A1233dj
時間:
2021-8-13 17:28
2236744811 發(fā)表于 2021-7-13 09:02
為什么串口初始化不用打開接收位REN=1就可以接收發(fā)送的文字?
因為這里的REN=1,是打開接收串口,而這個程序只需要滿足發(fā)送就可以了
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1