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

相关推荐
紫金修道5 小时前
【Linux】在Arm服务器源码编译onnxruntime-gpu的whl
linux·服务器·arm开发
前进的程序员1 天前
ARM 芯片上移植 Ubuntu 操作系统详细步骤
linux·arm开发·ubuntu
楚灵魈1 天前
[Linux]从零开始的STM32MP157 Busybox根文件系统构建
linux·arm开发·stm32
sword devil9002 天前
stm32实战项目:无刷驱动
arm开发·stm32·单片机·嵌入式硬件
CN.LG2 天前
tmpfs和普通文件系统相比有哪些优缺点
arm开发
Jia ming2 天前
Linux 内核对 ARM 大小核架构的支持
linux·arm开发·架构
JANYI20183 天前
GCC编译器安装详细说明(举例arm-2013q3)
arm开发
Tassel_YUE3 天前
VMware Fusion安装win11 arm;使用Mac远程连接到Win
arm开发·macos
家庭云计算专家4 天前
onlyoffice 源码调试指南-ARM和x86双模式安装支持
arm开发·docker·容器·云计算
wang09074 天前
网络协议之DHCP和PXE分析
网络·arm开发·网络协议