推荐阅读最新更新时间:2024-03-16 16:04
如何不打开KEIL或IAR直接使用ST-LINK烧录.hex文件
大家在开发STM32时,烧录.hex文件主要是两种方式,一种是通过USB转TTL,利用串口进行烧录。我在另一篇博文已经写过,链接如下 https://mp.csdn.net/postedit/84644329 。这种方式无需打开KEIL或者IAR,但是如果板子上没有如同正点原子开发板上的一键下载电路的话,比较麻烦,而且保留BOOT接口会增加部分电路,使用不太方便。另一种是大家常用的利用KEIL或者IAR进行烧录,使用十分方便,但是必须安装KEIL或者IAR才能使用,想在一台没有安装KEIL或者IAR的电脑上烧录的话必须先安装软件,一些情况下比较繁琐,而且必须提供源文件。如何不提供源文件又能很方便的下载呢,可以使用ST官方的软件ST
[单片机]
STM8 8位基本定时器(TIM4,TIM6)
介绍 该定时器由的8可位自动重载的向上计数器所组成,它可以用来作为时基发生器,具有溢出中断功能。 TIM6同时钟信号控制器用于定时器同步和级联。 STM8通用定时器TIM4的主要功能 TIM4功能包括: 8位向上计数的自动重载计数器; 3位可编程的预分配器(可在运行中修改),提供1,2,4,8,16,32,64和128这8种分频比例。 中断产生 –在计数器更新时:计数器溢出 STM8通用定时器TIM6主要功能 TIM6的功能包括: 8位向上计数的自动重载计数器; 3位可编程的预分配器(可在运行中修改),提供1,2,4,8,16,32,64和128这8种分频比例。 用于和外部信号相连和定时器
[单片机]
stm8 I/O口模式配置
复位后的默认配置 :复位之后,所有的引脚都是悬浮输入模式。 However, a few pins may have a different behavior. Refer to the datasheet pinout description for all details 。 引脚用作常规IO口时直接配置为输入或者输出模式即可:例如PA0配置为上拉输入无中断功能 GPIO_Init(GPIOA, GPIO_PIN_0, GPIO_MODE_IN_PU_NO_IT); IO口用作复用功能输入时:用户必须通过配置DDR和CR1寄存器设置将对应的I/O口设为为悬浮或是上拉输入。 GPIO_Init(GPIOD,GPI
[单片机]
STM8与汇编语言(4)
今天要做的实验是在ST的三合一开发板上,用汇编语言写一个程序,驱动板上的LED指示灯闪烁。 开发板上的LED1接在STM8的PD3上,因此要将PD3设置成输出模式,为了提高高电平时的输出电流,要将其设置成推挽输出方式。这主要通过设置对应的DDR/CR1/CR2寄存器实现。 还是利用ST的开发工具,先生成一个汇编程序的框架,然后修改其中的main.asm,修改后的代码如下。 编译通过后,下载到开发板,运行程序,可以看到LED1在闪烁,且闪烁的频率为5HZ。 stm8/ #include mapping.inc ; 下面定义端口D的寄存器地址 PD_ODR EQU $500f PD_IDR
[单片机]
STM8 多处理器通信
STM8 多处理器通信 通过UART可以实现多处理器通信(将几个UART连在一个网络里)。例如某个UART设备可以是主设备,它的TX输出和其他UART从设备的RX输入相连接;UART从设备的各自TX输出作逻辑与运算后和主设备的RX输入相连接。 在多处理器配置中,我们通常希望只有被寻址的接收者才被激活,来接收随后的数据,这样就可以减少由未被寻址的接收器的参与带来的多余的UART服务开销。 未被寻址的设备可启用其静默功能置于静默模式。在STM8静默模式里: 任何接收状态位都不会被设置。 所有接收中断被禁止。 UART_CR1寄存器中的RWU位被置1。RWU可以被硬件自动控制或在某个特定条件下由软件写入。 根据UAR
[单片机]
STM8 中断映射
下面表格列出了中断映射: (表16:STM8中断映射)
[单片机]
STM8时钟配置
#include stm8s.h #include stm8s_conf.h void SystemClockOutput(void) { GPIO_Init(GPIOE,GPIO_PIN_0,GPIO_MODE_OUT_PP_LOW_FAST); CLK_CCOConfig( CLK_OUTPUT_CPUDIV8 ); } void SystemClockConfigHSE(void) { CLK_HSECmd(ENABLE);//外部时钟开 //CLK_LSICmd(ENABLE);//使能内部低频RC //CLK_HSICmd(ENABLE);//使能内部高
[单片机]
基于IAR开发环境的STM8S模拟IIC代码
基于IAR STM8 2.10开发环境,STM8S005K6单片机,模拟IIC方式读写AT24C16或AT24C32,已验证可以正常对AT24C32进行读写数据,只是有个疑问,对于单片机接SDA脚的IO口进行方向控制反而引起时序不正常而读写不了数据,例程中是将此IO口始终设置为输出,不知道会不会有隐患,有待测试... 以下是代码,完整代码请下载附件,包含完整工程! #include 24Cxx.h #include stm8s.h #include stm8s_gpio.h #define AT24C32_SETSDAIN GPIO_Init(AT24C32_SDA_PORT, GPIO_PIN_6,
[单片机]