感谢各位大神的帮忙,我认真思考,再调试 |
weqeq23 发表于 2022-8-29 14:46 这是基本条件和应用代码
|
这么用2个IO??P5.5接VCC,试一下 |
coody_sz 发表于 2022-8-29 14:32 我觉得你可能没有认真看我的回复 |
j1ason 发表于 2022-8-29 10:38 楼主用STC8G1K08A的P5.5输出高电平,分压后供P5.4 ADC取样,这样用没有什么问题,但与 “I/O复用方式” 没有干系。所谓复用是指同一个I/O口同时或分时执行两个以上功能。出现异常波形当然是代码问题。 |
楼主,理论上可行但如果不可控因素更多的话还是建议慎用,从你给的程序看完全就是测的P5.5的电压,这跟你前面描述的情况完全不符啊http://www.51hei.com/bbs/forum.php?mod=redirect&goto=findpost&ptid=223192&pid=1105390 |
P5.5是稳定输出高电平,P5.4进行AD转换(输入口)。通过AD转化实现温度检测。 |
Y_G_G 发表于 2022-8-27 00:21 你这种情况,属于电源问题,电源做好,不要有跌落,就不会复位,我用这个MCU做灯控也比较多,没发现你说的问题。 |
Y_G_G 发表于 2022-8-29 11:29 8G1K稳定性好象是不好 我搞了个GPS时钟服务 因为8G1K 20PIN的有双串口就用这片子 超过2秒收不到GPS数据会报一下警告 大概稳定工作了半年 开始间隔报警 然后越来越频繁 我以为是GPS模块的问题 连模块带天线都换了一套也没什么用 换了8G1K片子正常工作了 然后过半年 又不行了 但重新刷一下程序 一点没动的程序 就又能稳定工作半年 应该不是电源的问题 这个模块12VDC和12v电池双供电 电源为主和电池为主都试过 一样 |
cnos 发表于 2022-8-29 09:58 跟硬件肯定是没有关系的了,估计是日光的镇流器,只有在开灯的时候有复位现象,连续开灯十几二十次就会有一次复位 同一块PCB板子,直接换上PIC12F615,搭线测试,开了半个小时,没有一次复位的 用于测试的程序很简单,首先排除程序的问题 就是什么功能都没有,就是开机之后,控制IO先低电平并延时0.5秒,然后,就是一直开灯,几行代码而已,ADC什么的都没有用 只要开机之后出现灭灯的,就是复位了 |
Y_G_G 发表于 2022-8-26 17:18 unsigned char ADC_NTC(void) { unsigned char b; P5M0 = 0X00; P5M1 = 0X20; P_SW2 |= 0x80; ADCTIM = 0x3f; P_SW2 &= 0x7f; ADCCFG = 0x0f; ADC_CONTR = 0x85; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); ADC_CONTR |= 0x40; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); while (!(ADC_CONTR & 0x20)); ADC_CONTR &= ~0x20; b = ADC_RES 由于电路设计需要 |
xxxevery 发表于 2022-8-28 19:38 理论上还是可以的 |
程序问题,还得慢慢自己研究,那么多人用基本不会出现如此简单的错误 |
coody_sz 发表于 2022-8-26 16:28 收到,另外,目前波形中P5.5已经是推挽输出模式的了 |
Y_G_G 发表于 2022-8-27 00:21 不至于这么惨吧,同样用STC8G1K08A-QFN 做了一个24V电源的监控处理板,没听用户反馈什么问题,带的是无刷电机。 |
Y_G_G 发表于 2022-8-27 00:21 抗干扰与你的电路设计有关,你的STC单片机用了几个电容?多大容量的? |
P5.5接稳定高电平,那为啥不直接接到电源呢,不知咋想的。IO口输出是经过了内部的输出电路的,不管输出高、低电平都会受到输出电路内阻的影响,拿来作为AD的参考电压很不合适啊 |
188610329 发表于 2022-8-26 15:29 STC8G1K08A 每个IO都有ADC功能,一块二一片,性价比还是蛮可以的 就是抗干扰不怎么好,我DIY一个太阳能路灯,只是LED灯的线架在220V上而已,有时候开日光灯,这板子就复位了,我还打了20个板子,准备回家用呢......有点后悔了,当初应该用PIC12F615的 |
1,为什么要这么操作? 2,代码上传 |
一般建议NTC接地,这样用什么问题吗?P5.5要设置为推挽输出。 |
j1ason 发表于 2022-8-26 14:14 P5.5 是不可能稳定输出高电平的,你要稳定的话,只能 10K电阻的另一头接VCC,把P5.5 开漏模式 输出稳定的低电平 才有可能实现“稳定” |
STC8G 那么多产品中, 我还真没找到 可以用 P5.4 测AD的型号, 所以,连示波器都用上了, 不能先看看 产品规格书么? |
上图中在ADC过程,P5.5是稳定输出高电平,P5.4进行AD转换(输入口)。通过AD转化实现温度检测。 |
你这个问题描述的也太简单了吧,哪个口是adc输入,哪个口是IO口,实现的功能和出现的现象等都应该描述清楚才好解决啊 |
你这个怎么要I/O口呀,上面I/O的电压要固定一个值才行。 |
ADC端口复用受外部硬件条件限制,也就是在ADC采样时段其他外部硬件呈高阻,不影响ADC采样电压。从你的图看不出你要怎么复用。 |
没看明白,你说下你的操作过程。 |
没明白你是怎么复用的不说明清除不好说 |
说明一下,P55与P54的电压由谁提供。 这个图在P55、P54做AD时,无外界提供电压,AD采样接近0。 P55、P54做IO时,则是示波器的图形。 而且又不批出,黄线是谁的波形,蓝线是谁的波形。在什么情况下的波形。 全靠别人猜。 沟通表达能力差。 |
刚好遇到了,STC技术告知的解决办法:在ADC脚对地接一颗103电容。 http://www.51hei.com/bbs/forum.p ... p;page=1#pid1105080 |