单片机编程中的一些时序问题
本文的的delay原型:
void delay(unsigned int t){
while(t--);//10us
}
今天在单片机编程时遇到了一些问题:
- LCD1602的第二行无法显示
- DS18b20的温度一开始一直为0,后来一直是变化的负数
这里面有两个原因,一个是延时时间不够,如以下lcd程序中,在端口被赋值一个字节后的延时是必不可少的,LCD1602需要时间处理一个字节的数据.
EN=1;
GPIO_LCD=order;//#define GPIO_LCD P0
delay(2000);
EN=