📄 test_usart._c
字号:
//*************************************************
//测试功能:下位机往上位机发送数据
//测试方法:串口调试助手
//测试结果:OK
//时钟频率:外部8m
//管脚分配:
//注意事项:
//完成时间:2009.03.15
//**************************************************
//**************************************************
//头文件
//**************************************************
#include <iom16v.h>
#include <macros.h>
//**************************************************
//**********************************************************
//函数名称:void DELAY_1MS(void)
//函数功能:延时1ms
//注意事项:i=143*n-2
//**********************************************************
void DELAY_1MS(void)
{
unsigned int i;
for(i=1142;i>0;i--)
;
}
//**********************************************************
//函数名称:void DELAY_1MS(void)
//函数功能:延时1ms
//注意事项:i=143*n-2
//**********************************************************
void DELAY_NMS(unsigned int n)
{
for(;n>0;n--)
DELAY_1MS();
}
//*****************************************************
//函数名称:void USART_INIT(void)
//函数功能:8M,波特率9600
//注意事项:
//*****************************************************
void USART_INIT(void)
{
UBRR=0X33;//fosc=8mhz,波特率9600
UCSRA=0X20;
UCSRC=0X86;
UCSRB=0X98;
}
//*****************************************************
//函数名称:void USART_INIT(void)
//函数功能:8M,波特率9600
//注意事项:
//*****************************************************
void USART_TX(unsigned char data)
{
UDR=data;
while(!(UCSRA&(1<<TXC)))
;
}
//*****************************************************
//函数名称:void USART_INIT(void)
//函数功能:8M,波特率9600
//注意事项:
//*****************************************************
void DATA_DISPLAY(unsigned long int data)
{
unsigned char temp[10],i;
temp[0]=(data/1000000000);
temp[1]=(data/100000000)%10;
temp[2]=(data/10000000)%10;
temp[3]=(data/1000000)%10;
temp[4]=(data/100000)%10;
temp[5]=(data/10000)%10;
temp[6]=(data/1000)%10;
temp[7]=(data/100)%10;
temp[8]=(data/10)%10;
temp[9]=data%10;
for(i=0;i<10;i++)
{
USART_TX(temp[i]);
DELAY_NMS(1);
}
}
//**************************************************
//主函数
//**************************************************
void main(void)
{
USART_INIT();
DATA_DISPLAY(4294967295);
while(1)
;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -