推荐阅读最新更新时间:2024-11-12 11:33
stm8 调试硬件I2C心得
这次调试stm8的硬件真是艰辛,没有想到这样恼火!整整搞啦 我5天的时间,参考网上很多例子和风驰的stm8讲解!和自己的实践,终于搞通啦!特将自己在调试过程中一些心得希望的大家分享。由于本人水平有限也希望大家指出不足和错误的地方! Stm8不需要专门配置GPIO口,执行初始化就可以啦!有些stm8需要打开EEPROM设置I2C(看官方文档)。 Stm8主要靠SR1和SR3状态寄存器判断I2C的情况(while(!XXXXX)就是出自这里),多半大家调不通!就是卡在这里(需要注意的是 寄存器有些位,只要读寄存器就可以清除,在仿真的时候,最好不要打开寄存器页面)。这里分软故障和硬故障: 首先是硬故障: 一般是stm8芯片I
[单片机]
STM8 ADC读取数据异常问题的解决
做了一个stm8的一个测量电压电流的项目,发现adc通道通过一个10k电阻连接VCC,的时候ADC数据出来都是只有200多,按理说,10位adc应该出来1000多才对,由于adc出来的数据是十六位的,怀疑是串口发送数据的时候数据位数不对。于是改为 uint16_t dat_tmp = 0; // ADC_conf(4); // dat_tmp = ADC_GetConversionValue(); // printf( rnddddddddddrn ); // delay(0xffff); TIM1_SR1 &= ~(1 0); //清除中断标志 ms_count++; if(ms_count 1000) //1ms*
[单片机]
STM8定时器1的四种触发同步说明
这里说明下,我这边的最小系统版的芯片型号是105K系列的,定时器部分没有TIM5TIM6,只有TIM4,所以不讲解TIM1与TIM5/6的同步,想要了解这部分可以看官方手册。 TIM1的计数器使用三种模式与外部的触发信号同步:标准触发模式、复位触发模式和门控触发模式。 标准触发模式: 说白了就是使用外部信号触发内部计数器启动,然而如何配置呢,看手册: 下面根据官方给出的步骤配置寄存器: void Tim1_trigger_standard_mode_Init(void){//tim1标准触发模式初始化 PC_DDR_DDR2 =0;//输入 //PD_CR1_C14 =0;//浮空输入 PC_CR1_
[单片机]
C51对特殊功能寄存器位变量定义写法不严谨
C51对特殊功能寄存器位变量定义写法是否有不严谨之处,因为sbit P1_3=P1^3;中^是一个双目运算符 (按位加),P1口的8位状态和3正好构成双目,前面又是一个赋值号,又把一个字节赋给一个位,逻辑上讲不通。为什么非要用一个^号来定义,如果用两个(^^)来定义就不会有歧意,也不会被人误解了,在C51中有很多这样的符号,如== && !! =等。须要用上面的写法来定义吗?在这点上我可能是有点晕,但尚未影响编程,如果方便请看了书的和会搞程序的同人给予指点!
[单片机]
stm8 halt低功耗模式
STM8 STM8系列是意法半导体公司生产的8位的单片机。该型号单片机分为STM8A、STM8S、STM8L三个系列。STM8A:汽车级应用STM8S:标准系列STM8L:超低功耗MCU 内核高级STM8内核,具有3级流水线的哈佛结构扩展指令集存储器程序存储器:8K字节Flash;10K 次擦写后在55°C环境下数据可保存20年数据存储器:640 字节真正的数据EEPROM;可达30万次擦写RAM:1K字节 时钟、复位和电源管理2.95到5.5V工作电压灵活的时钟控制,4个主时钟源– 低功率晶体振荡器– 外部时钟输入– 用户可调整的内部16MHz RC– 内部低功耗128kHz RC带有时钟监控的时钟安全保
[单片机]
STM8单步调试的问题
在使用STM8进行单步调试的时候出现如下问题: 有时出现:Error:swim error :swim communication error,如下所示: 有时出现:Error:swim error :comm timeout,如下所示: 原因:开发过程中设置了硬件看门狗,导致一进去就会引起看门狗复位。 解决方法:通过修改option byte,设置为软件看门狗。 经验教训:以后单步调试的时候不能开启硬件看门狗。
[单片机]
STM8系列芯使用STVP烧写程序设定读保护和如何解除读保护操作
首先打开STVP,打开需要烧写的程序(Open),如果要对芯片进行读保护,就把选择项里面的保护选择为ON就行。如下图所示: 点全部写入,会提示你设定保护,点“是”就写入保护了。 以上写入完成后,再读和写均被保护。提示如图: 如果要重新下载程序,就必须先去掉保护,需要选择保护OFF,点下图按钮即可完成操作。
[单片机]
基于STM8的ADC0832采集及蓝牙通信系统
最近在淘宝逛的时候发现了一款单片机,STM8。相比之前一直使用的也是8位的AVR相比,感觉STM8更为强大,芯片特点如下: 内核:具有3级流水线的哈佛结构、扩展指令集 程序存储器:8K字节Flash;RAM:1K字节 数据存储器:640 字节真正的数据EEPROM;可达30万次擦写 更重要的一点就是STM8系列若使用库编程的话,可以方便的不同芯片的程序移植。甚至可以方便的移植到STM32上面,大大减轻了更新硬件的重写程序的工作量。 ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。芯片转换时间仅为32μS,
[单片机]