Numicro51驱动sht11

2020-02-02 09:18发布

最近在学习,新唐的M051。初学就与困难。把51上面的sht11的驱动移植到M051上,,结果跑不起来。。测量不到数据。。。我IO设置的是准双向的。主频是12M的。。。不知道是我IO口模式设置错了,,还是怎么回事。。。就是读不出来、。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
sting_yang
1楼-- · 2020-02-04 01:40
zhengwending111 发表于 2012-11-20 11:51
((unsigned char) (P3_PIN&0x10))>>4,我这样操作,结果现象一样~!没什么大的改观~! ...

1.时钟设定,好像错了,请参考新塘的范例
2.IO复位后就是准双向 请将IO设定去掉
3.((unsigned char) (P3_PIN&0x10))>>4 只用在读SHT11资料 写还是用Sht11_Data
zhengwending111
2楼-- · 2020-02-04 04:32
 精彩回答 2  元偷偷看……
sting_yang
3楼-- · 2020-02-04 04:59
zhengwending111 发表于 2012-11-20 12:33
我只修改了,读操作是“err=((unsigned char) (P3_PIN&0x10))>>4”,,令时钟就是我按新唐范例来的。 ...

main(void)
{
    Un_Lock_Reg();
        PWRCON |= XTL12M_EN;
        while((CLKSTATUS & XTL12M_STB) == 0);                 //Wait until 12M clock is stable.       
       
        CLKSEL0 = (CLKSEL0 & (~HCLK)) | HCLK_12M;        //Set external crystal as the system clock
    .
    .
    .
    .
    .
这段是从新塘范例截取下来的 跟你的不一样
zhengwending111
4楼-- · 2020-02-04 09:50
sting_yang 发表于 2012-11-20 12:45
main(void)
{
    Un_Lock_Reg();

哦。。这个没关系的。。。意思都是一样的。。。我刚才把他按例程修改了,,读出的数据还是不变~!现象一样~!
sting_yang
5楼-- · 2020-02-04 12:53
zhengwending111 发表于 2012-11-20 12:33
我只修改了,读操作是“err=((unsigned char) (P3_PIN&0x10))>>4”,,令时钟就是我按新唐范例来的。 ...

应答也是读操作。有改吗?
zhengwending111
6楼-- · 2020-02-04 14:20
sting_yang 发表于 2012-11-20 13:22
应答也是读操作。有改吗?

有。。。读操作我修改了。。。写操作我还是用的DOUT

一周热门 更多>