第008课_第1个ARM落版程序及引申
form:第008课_第1个ARM裸板程序及引申
第001节_辅线1_硬件知识_LED原理图
当我们学习C语言的时候,我们会写个Hello程序。那当我们下ARM程序,也该有一个简单的程序引领我们入门,这个程序就是点亮LED。
我们怎样去点亮一个LED呢?分为三步:
1. 看原理图,确定控制LED的引脚;
2. 看主芯片的芯片手册,确定如何控制这个引脚
3. 写程序
先来讲讲怎么看原理图:LED的样子有很多种,想插脚的,贴片的。
它们长得完全不一样,因此我们在原理图中将它抽象出来。
点亮LED需要同电源,同时为了保护LED,价格电阻减小电流。控制LED灯的亮灭,可以手动开关LED,但在电子系统中,不可能让人来控制开关,通过编程,利用芯片的引脚去控制开关。
LED的驱动方式,常见的有四种。
方式1:使用引脚输出3.3V点亮LED,输出0V熄灭LED。
方式2:使用引脚拉低到0V点亮LED,输出3.3V熄灭LED。
方式3:使用引脚输出1.2V点亮LED,输出0V熄灭LED。
方式4:使用引脚输出0V点亮LED,输出1.2V熄灭LED。
由此,主芯片引脚输出高电平/低电平,即可改变LED状态,而无需关注GPIO引脚输出的事3.3V还是1.2V。所以简称输出1或0:
逻辑1 -> 高电平
逻辑0 -> 低电平
第002节_辅线1_硬件知识_S3C2440启动流程与GPIO操作
在原理图中,同名的Net表示是连在一起的。
引脚GPF4怎样输出1或0?
1. 配置为输出引脚
2. 设置状态
因此,设置GPFCON[9:8]=0b01,即GPF4配置为输出
设置GPFDAT[4]=1或0,即输出高电平或低电平
S3C2440框架:
S3C2440启动流程:
Nor启动:
Nor Flash的基地址为0,片内RAM地址为0x4000 0000;
CPU读出Nor上第1个指令(前4字节),执行
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!