stm8
文章平均质量分 73
ZeroSkyrim
这个作者很懒,什么都没留下…
展开
-
IAR for stm8使用标准固件库的方法以及注意事项
标准库其实挺方便的。有了一个模板之后,如果改参数,根本就不需要再去查手册,重新定义寄存器值了。第一部分,stm8标准库介绍。stm8的标准库名称代码是stsw-stm8069,根据这个代码就可以到st的官网上下载到最新的固件库。解压固件库后,有几个文件夹,我这里只是简单的说明各文件夹和文件的作用,具体的说明参考文件包中的chm帮助文档。Libraries是驱动文件夹,里面的原创 2015-03-02 14:28:05 · 24980 阅读 · 2 评论 -
[STVD可能有bug]向量文件中变量数值不能超过36767(即不能超过2字节)
我刚接触stm8s时候,发现有两款编辑器,STVD和IAR,但两款都有些问题,不过最后我还是选择了IAR,因为STVD问题更多,而且还有些致命缺陷。而下面说的是我发现的一个bug。但是无法解决。STVD新建一个工程后,会有两个文件main.c和stm8_interrupt_vector.c。后者是中断向量文件。但是,如果你在这个文件中定义函数的话……比如下面的函数,其他工作原创 2015-03-26 22:10:47 · 2472 阅读 · 1 评论 -
STM8S 时钟配置源码程序
型号:stm8s903k3编译器:STVD4.3.5+cosmic 8k 5.4.1其他:采用操作寄存器,不使用库-----------------时钟是单片机的灵魂,所有的东西都和时钟有关。相比AVR反人类的熔丝位设置时钟/振荡源。stm只要操作寄存器就可以了。最关键的是!!就算设置错了也不!会!锁!死!----------------stm内部时钟示意图。原创 2014-12-06 23:56:51 · 5841 阅读 · 1 评论 -
stm8s 串口通讯源码程序(8位数据,奇校验,2个停止位)
串口初始化第一步,配置波特率,波特率是和时钟相关的,因此首先要配置时钟,时钟的配置参见上一篇博客。stm8s主时钟设置如果在串口初始化中,如果串口时钟没有打开,请在主时钟配置中打开串口时钟。配置波特率,stm8s的波特率,时钟,波特率寄存器值的计算相比avr和51又是巨大的进步,stm8s算波特率寄存器值只要Fmaster/波特率就可以了,不需要加加减减。但是在写入寄存器时需要原创 2014-12-07 00:19:35 · 9549 阅读 · 0 评论 -
第一个STM8项目的记录
说明我的第一个项目是stm8。 显示部分是点阵加数码管,通过串口控制下位机变频器的运行。虽然看起来很简单,但是项目复杂度超过我以前开发板上的所有项目,因此碰到了很多前所未有的问题。在此记录一笔。 注,这是本人第一个项目的记录,不保证科学与正确1,misplaced local declaration错误变量必须在函数的最开始处一口气全部声明或者定义掉 这其实是说明cosmic不支持c99的原因原创 2015-07-25 12:19:07 · 5220 阅读 · 0 评论 -
[蜂鸣器不简单]单片机中蜂鸣器的多种运用(长响,短响,多次响)
在一般的单片机教材中,对蜂鸣器的使用都有简单的说明。这里就详细展开不同蜂鸣器,不同芯片的蜂鸣器写法了。不过,在开发项目的时候发现,教材中的蜂鸣器使用存在很大的局限。最大的局限就是不能使用delay这种忙循环函数,这种函数不仅对CPU资源有极大浪费,而且会延后其他函数的运行,如果有些时间相关的函数,会造成时间错乱。此外在蜂鸣器响的过程中,不能进行除了中断之外的任何操作。严格来说,原创 2015-07-15 14:02:42 · 17235 阅读 · 10 评论