推荐阅读最新更新时间:2024-03-16 14:40
一文分享STM32的学习笔记
1、AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2 1,意思是APB2接高速设备 2、Stm32f10x.h相当于reg52.h(里面有基本的位操作定义),另一个为stm32f10x_conf.h专门控制外围器件的配置,也就是开关头文件的作用 3、HSE Osc(High Speed External Oscillator)高速外部晶振,一般为8MHz,HSI RC(High Speed InternalRC)高速内部RC,8MHz 4、LSE Osc(Low Speed External Oscillator)低速外部晶振,一般为32.768KHz,LSI RC(Low Speed InternalRC
[单片机]
STM8学习笔记---定时器输出7路PWM波
STM8S003F3P6单片机共有三个定时器定时器1、定时器2、定时器4。其中定时器1为16位高级定时器,定时器2为16位通用定时器,定时器4为8位基本定时器。定时器1和定时器2可以输出PWM波。其中定时器1有4个通道,定时器2有3个通道。 现在让定时器1和定时器2所有通道同时输出PWM波。 首先初始化定时器IO口 通过最小系统图可以看出定时器通道对应的IO口为: TIM1_CH1– PC6, TIM1_CH2– PC7, TIM1_CH3– PC3, TIM1_CH4– PC4, TIM2_CH1– PC5, TIM2_CH2– PD3, TIM2_CH3– PA3, 将定时器对应的IO口都设置为推挽输出模式。因为要
[单片机]
51单片机学习笔记:基于状态机的按键对时程序(短按,长按,连
之前的电子钟程序中,用的按键消抖处理方法是10ms的延时,这种方法效率比较低 所以现在利用状态机原理重写一下,效率很高啊 4个独立按键中用到3个, keys5用于切换对时分秒等状态,keys2是减小数值,keys3是增加数值 同时可以判断按键的 短按,长按,连发 等功能 小于2秒视为短按, 大于2秒视为长按, 在长按状态下每0.2秒自动连发一次, 这样对时的时候就不用按N次了 欢迎一起交流,qq 102351263 验证码 iteye 程序分很多个文件 ,Keil uVision4 打包 C代码 #include MY51.H #include keyScan.h #include sm
[单片机]
MSP430学习笔记2---两个LED同时亮灭和顺闪
参照学习笔记1,再看看板子上写着P1.0(LED1) P1.6(LED2)很容易写出同时点亮两个LED的程序: 1 #include msp430x14x.h 2 3 void main(void) 4 { 5 WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer 6 P1DIR |= 0x41; // Set P1.0 to output direction 7 8 for (;;) 9 { 10 volatile unsigned int i; 11 12 P1OUT ^= 0x41;
[单片机]
C51单片机学习笔记之LED
简介 LED就是一个发光二极管,没啥好说的。唯一 一点就是低电平有效! 原理图 代码部分 #include REGX52.H void delay() { unsigned int i; for(i=0;i 30000;i++); } main() { unsigned int i; unsigned char J; while(1) { /*P0=0xFE; delay(); P0=0xFD; delay(); P0=0xFB; delay(); P0=0xF7; delay(); P0=0xEF; delay(); P0=0x
[单片机]
ARM汇编语言学习笔记(一)介绍
目的 在看了某位大佬的文章之后也想写一点自己在学习汇编的时候的学习笔记。 新手入门,主要基于韦东山老师的新一期代码来实现操作,掌握汇编的基础操作。 以一个菜鸟的角度来看待汇编代码问题,希望可以了解代码的具体运作过程。 把问题拿出来,分析总结。希望方便后来的自己和后来学习的伙伴,不要做 double work。 一、汇编语言是什么 这是百度百科的介绍:汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过
[单片机]
STM8学习笔记---串口printf函数的实现
在使用单片机的时候,串口是要经常使用的功能,特别是在调试代码的过程中,经常需要使用串口打印出某些变量值,来判断程序执行流程是否正常。但是单片机默认情况下没有printf函数,如果需要使用printf函数的功能,就需要自己在串口代码中配置。下面总结一下如何在STM8单片机中使用printf函数功能。 首先按照常规方法先初始化串口 void Uart1_IO_Init( void ) { PD_DDR |= ( 1 5 ); //输出模式 TXD PD_CR1 |= ( 1 5 ); //推挽输出 PD_DDR &= ~( 1 6 ); //输入
[单片机]
STM8学习笔记——初步认识
最近项目要求找个便宜又够用的单片机,本来是想选STC的,但其实STC也并不便宜,且调试比较麻烦,而且AD不是很好,所以选择了STM8。昨天买来了ST-LINK III,拿了一块STM8S105S4,此单片机有16K ROM,2K RAM,1K的EEPROM,带10bitADC,定时器(ICOCPWM)和SPI I2C UART通讯接口,看门狗等,封装为LQFP44。 这款单片机的供电分得很细,主电源、IO口、模拟供电都分开,这样就可以非常灵活的配置,比如模拟供电可以选用5V以扩大量程;IO口可以配置位3.3或5V以适应一些设备。上图中VDD/VSS引脚用于给内部主电压调节器(MVR)和内部低功耗电压(LPVR)调节器供电
[单片机]