ARM点灯---看手册

知识点:

一个程序可能会遇到内存泄漏问题,可能一次运行泄漏几M大小,执行几个小时才会泄漏到站崩溃,所以要查看是否有内存泄漏。

查看手册教程

0927-上午 视频1:25;00

硬件程序开发流程

最小系统:单片机、晶振电路、电源电路、复位电路、内存 flush、

第一步:

1.看开发板丝印

丝印找对应原理图引脚

第二步:

在原理图底板和核心板找到对应引脚和GPIO口

第三步:

找到对应引脚

第四步:

读手册,一般引脚操作就先

第五步:

keil4编写代码

#define GPGCON_KEY (*( volatile unsigned long *)0x56000060UL)

#define GPGDAT_KEY (*( volatile unsigned long *)0x56000064UL)

写成宏定义有助于程序的编写

GPGDAT_KEY:自己设计的宏名

volatile关键字:

unsigned long:无符号是因为地址都为正数,long是因为32位操作系统long为4个字节,64位操作系统,long为8个字节,如果写int 32位64位都是4字节,不同操作系统地址存放也不一样,所以为unsigned long型

UL:表示这个数是无符号长整型(别人一看就知道)

第六步:

对CON、DAT两个部分进行位操作,规则参考第四步

将按键状态值封装成函数,返回值表示dat值,获取到dat值

main.c点灯代码

视频知识点:

GPB5配置

地址写入值

先强转为指针,再修改其值

0x56000010硬件地址(寄存器),与cpu中真正的寄存器不一样,那是真正的寄存器 这里只是硬件地址

UL表示无符号长整型

volatile关键字 易失性修饰

cash缓存

烧录程序

keil4软件烧录前配置

0927下午 00:30

相关推荐
早日退休!!!11 小时前
ARM Cortex-M核 【保存上下文&恢复上下文】
arm开发·单片机·嵌入式硬件
早日退休!!!18 小时前
ARM A核、ARM M核、X86与RISC-V架构:寄存器作用及上下文处理差异报告
arm开发·架构·risc-v
A-花开堪折1 天前
Qemu-NUC980(十一):SPI Controller
linux·arm开发·驱动开发·嵌入式硬件
Q_21932764552 天前
基于ARM的嵌入式温度控制系统的设计
arm开发
想你依然心痛2 天前
从x86到ARM的HPC之旅:鲲鹏开发工具链(编译器+数学库+MPI)上手与实战
java·开发语言·arm开发·鲲鹏·昇腾
MUTA️2 天前
x86 架构下运行 ARM-ROS2 Docker 镜像操作指南
arm开发·docker·架构
比奇堡派星星3 天前
Linux 杂项设备驱动框架详解
linux·arm开发·驱动开发
xingzhemengyou13 天前
LINUX 通过/proc/interrupts了解系统硬件中断的使用情况
linux·arm开发
rfidunion3 天前
ubuntu下使用qemu模拟ARM(一)-------安装samba服务器
服务器·arm开发·ubuntu
三佛科技-134163842123 天前
FT32F072xx、FT32F072xB、FT32F072x6/x8基于ARM Cortex-M0内核32位单片机分析
arm开发·单片机·嵌入式硬件·智能家居·pcb工艺