嵌入式硬件第六弹——ARM(3)

(续接上篇)

3. GPIO外设

IOMUXC:引脚复用功能 + 引脚电气属性



Linux编译:

  • arm-linux-gnueabihf-gcc -g -c led.S -o led.o
  • arm-linux-gnueabihf-ld -Ttext 0x87800000 led.o -oled.elf
  • arm-linux-gnueabihf-objcopy -O binary -S -g led.elf led.bin
  • arm-linux-gnueabihf-objdump -D led.elf > led.dis

Makefile编译:

  • 目标:目标文件 led.bin
  • 依赖:依赖源文件 led.S
  • 规则:源文件到生成目标文件中间的规则

4. 时钟与定时器

定时器 (EPIT GPT):是一个通过对已知频率的时钟信号进行计数,来实现定时、延时或事件计数功能的硬件模块或软件机制。
时钟(clock):在电子系统中是一个产生稳定、周期性振荡信号的电路或组件。这个信号像节拍器或心跳一样,为数字电路中的各种操作提供同步时序基准。
实时时钟(RTC real time clock): 是微处理器中的一个功能模块,用于在系统主电源关闭的情况下,继续提供精确的日历和时间信息。

4.1 时钟

4.1.1 硬件概念

时钟源:晶体整荡器

工作做原理:利用石英晶体的压电效应和固有谐振频率,来产生高度稳定的电信号。

PLL(phase locked loop)锁相环电路: 倍频

Prescale 分频器: 分频

PFD(phase fractional Prescale)相位分数分频器: 输出频率可升可降

4.1.2 代码编写

4.1.2.1 kernal

CCM_ANALOG_PLL_ARMn

  1. 先选择osc_clk,让step_clk为24MHz
  2. 再将PLL1的输出改成step_clk,让ARM暂时工作在24MHz;
  3. 配置PLL为1056,注意设置倍频因子之前先把PLL之后的二分频设置好,避免ARM内核故障!!
  4. 最后改回pll1_main_clk
4.1.2.2 528 PLL

CCM_ANALOG_PFD_528n

4.1.2.3 480 PLL

CCM_ANALOG_PFD_480n

4.1.2.4 AHB_CLK_ROOT(132M)

CBCMR[PRE_PERIPH_CLK_SEL]

CBCDR[PERIPH_CLK_SEL]

CBCDR[AHB_PODF]

4.1.2.5 IPG_CLK_ROOT(66M)

CBCDR[IPG_PODF]

4.1.2.6 PERCLK_CLK_ROOT(66M)

CSCMR1[PERCLK_CLK_SEL]

CSCMR1[PERCLK_PODF]

4.2 定时器

4.2.1 EPIT

Enhanced Periodic Interrupt Timer:增强型周期中断定时器

1s中断,中断服务函数中反转led灯

频率计算时1000*1000=1MHz

存储计算时1024*1024=1MByte

4.2.2 GPT

General Purpose Timer:通用目的定时器

输入捕获和比较输出

利用自由运行模式编写精准延时函数

相关推荐
少年、潜行1 天前
【代码开源】基于STM32的智能路灯控制系统设计
stm32·嵌入式硬件·开源·智能路灯
wotaifuzao1 天前
深度解析:NFC、UWB与BLE技术的演进、核心技术与“无感交互“融合应用展望
嵌入式硬件·交互·ble·uwb·nfc·数字钥匙
修勾勾L1 天前
OneNet平台生成token注意事项
stm32·物联网
玩转单片机与嵌入式1 天前
一个成熟的嵌入式AI系统,是长什么样子的?
人工智能·单片机·嵌入式硬件·嵌入式ai
玩转单片机与嵌入式1 天前
不会 Python、不会深度学习,也能在STM32上跑AI模型吗?
人工智能·单片机·嵌入式硬件·嵌入式ai
jghhh011 天前
基于STM32的桌面Mini时钟设计
stm32·单片机·嵌入式硬件
电化学仪器白超1 天前
小乌龟Git全程图形化操作指南:嵌入式本地版本管理与Gitee私有云备份实战
git·python·单片机·嵌入式硬件·物联网·gitee·自动化
yong99902 天前
基于STM32 Nucleo板的彩色LED照明灯设计(纯CubeMX开发)
stm32·单片机·嵌入式硬件
独小乐2 天前
019.ADC转换和子中断|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·mcu·arm
lingzhilab2 天前
零知派——STM32驱动INA219电流功率监测计实现高精度电源管理
stm32·单片机·嵌入式硬件