*
1010
=
0111
1000,这两个等式是等价的,120十进制就等于二进制的0111
1000。
至于电压采集,你用上面的等式得到数据,然后把这个数据格式化成字符串就OK了,最终传给1602的是一段字符串Char*,字符串转换函数可以自己写,不想写的话也可以调用sprintf函数,具体可以百度
1、用8除以晶振频率得到单指令周期指令的时间,然后根据这个时间计算循环次数。但是,这些计算是要花时间的,而且时间不定。如果延时时间长,这个时间或可以忽略,但是微秒级的延时,影响就很大了,所以,虽然可以,但是不实用。2、例程:
void Clock_Init()
{
uchar i
BCSCTL1&=~XT2OFF//打开XT2振荡器
BCSCTL2|=SELM1+SELS //MCLK为8MHZ,SMCLK为8MHZ
do{
IFG1&=~OFIFG //清楚振荡器错误标志
for(i=0i<100i++)
_NOP()
}
while((IFG1&OFIFG)!=0) //如果标志位1,则继续循环等待
IFG1&=~OFIFG
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)