20130822-STM8L101F3P6的PD0使用异常,尚未解决~!
来源:互联网 发布:php沐辰的博客 编辑:程序博客网 时间:2024/05/18 17:01
问题描述:
在STM8L101F3P6的PD0这个口,其控制一个NMOS来控制某设备的供电情况,电路如图下:
1、初始化函数中设置PD0为推挽输出高电平:
GPIO_Init(GPIOD,POWER_UP,GPIO_Mode_Out_PP_High_Fast);
但此后,在GPIO_SetBits(GPIOD,GPIO_Pin_0);的时候,会出现如下错误:
2、 设置为推挽输出低电平
GPIO_Init(GPIOD,POWER_UP,GPIO_Mode_Out_PP_Low_Fast);
时,问题依旧。
3、初始化GPIO时,不初始化该函数,不出现上述问题,但调试遇到GPIO_SetBits(GPIOD,GPIO_Pin_0)时也会出现上述的情况。很奇怪。
4、同样的电路在PA口无问题,PA2、PA3接上述电路可正常控制及正常调试。
5、更换PB0和PB6控制上述电路,问题依旧,并且调试几次后,ST-LINK无法正常连接单片机,芯片损坏。
目前这个问题无法解决,只能用替代方案不使用相应的IO口来解决。接下来看一下用户手册。
--------------------------------------------------------------------------------------------------------------------------
1、IO口原理结构图如下,上述问题估计和内部寄存器状态和IO输出级的MOS有关,但无法确认。
2.复位后的IO状态有如下描述:
这算是什么说词,告诉我a few pins,哪些pins啊?什么different行为啊?相关手册的pinout详细描述在哪里?狂晕。。。。
--------------------------------------------------------------------------------------------------------------
测试程序如下:
#include "stm8l10x.h"void GPIO_Init_my(void);static void BoardInit(void);static void CLK_Init(void);uint8_t Status=0;void main(void){ BoardInit();enableInterrupts();while (1){switch(Status){case 0://待机GPIO_ResetBits(GPIOD,GPIO_Pin_0);Status=1;break;case 1:GPIO_Init(GPIOD,GPIO_Pin_0,GPIO_Mode_Out_PP_High_Fast);Status=0;break;default:break;}}}void BoardInit(void){CLK_Init();GPIO_Init_my();}void CLK_Init(void){CLK_DeInit();CLK_MasterPrescalerConfig(CLK_MasterPrescaler_HSIDiv1);}void GPIO_Init_my(void){GPIO_Init(GPIOA,GPIO_Pin_2,GPIO_Mode_Out_PP_High_Fast);GPIO_Init(GPIOA,GPIO_Pin_3,GPIO_Mode_Out_PP_High_Fast);GPIO_Init(GPIOB,GPIO_Pin_All,GPIO_Mode_Out_PP_High_Fast);GPIO_Init(GPIOC,GPIO_Pin_All,GPIO_Mode_Out_PP_High_Fast);GPIO_Init(GPIOD,GPIO_Pin_0,GPIO_Mode_Out_PP_Low_Fast);}
- 20130822-STM8L101F3P6的PD0使用异常,尚未解决~!
- Maven尚未解决的问题
- Oracle数据使用事务异常—Command 的 Transaction 属性尚未初始化异常
- 终极解决phpmyadmin使用链接表的额外特性尚未激活的解决
- 我的尚未解决的疑问:SOCKET
- ZOJ 1039 尚未解决
- 尚未解决 持续更新
- cxf调用.net webservice 接口遇到的问题(尚未解决)
- 解决Microsoft Office 2010副本尚未激活的问题
- 尚未解决的问题---------------socket对象都有哪些内容????
- NetBeans“尚未部署该模块”问题的解决
- 对于ExecuteReader: Connection 属性尚未初始化问题的解决
- 一文概览语音识别中尚未解决的问题
- 百度地图使用的异常解决
- 20130714-STM8L101F3P6-官方库的Bug列表(不断维护)
- 20140626-STM8L101F3P6编程中关于assert_param()断言的小结
- "使用链接表的额外特性尚未激…
- 求尚未使用的号段(读书笔记四)
- C语言 南阳理工ACM 223.小明的烦恼
- hdu 4705 Y/杭电2013年多校第十场1010 组合
- Deep Learning论文笔记之(二)Sparse Filtering稀疏滤波
- python--用 OpenMP 并行多核加速 Python!
- 这几天遇到的问题
- 20130822-STM8L101F3P6的PD0使用异常,尚未解决~!
- java如何获取客户端IP地址
- VC 后台服务程序(二)
- mfc动态添加垂直滚动条
- Settings源码分析
- Deep Learning论文笔记之(三)单层非监督学习网络分析
- FCKeditor图片上传 进度条不动
- Android应用开发学习笔记之ContentProvider
- 类的sizeof值