Changchun Master Li

[RPi bring up] 深入树莓派内部,arm汇编语言精粹(上)

树莓派 RPibringup
阅读本文您不需要掌握的知识有 高深的操作系统理论 高深的计算机体系结构理论 高深的程序设计理论 阅读本文您需要具备 GNU工具链(make/GCC/LD) ★★☆☆☆ C语言 ★★☆☆☆ 安装有raspbian的树莓派 阅读本文您可以得到什么 可以用汇编语言刷online judg ...
Read more

[RPi bring up] 给树莓派写一个bootloader!
像使用arduino一样给树莓派下载程序

树莓派 RPibringup

阅读本文您不需要掌握的知识有

  • 高深的操作系统理论
  • 高深的计算机体系结构理论

阅读本文您需要具备

  • 全日制小学生学历及其同等学历 ★★★★★
  • GNU工具链(make/GCC/LD) ★★☆☆☆
  • ARM汇编语言 ★☆☆☆☆
  • C语言 ★★★★☆
  • Python ★☆☆☆☆

0. keyword

raspberry pi 1 bcm2835 armv6 bootloader embedded operating systems OS uart fat32 sd driver low level 底层开发 树莓派 裸机 C语言 arm汇编

1. requirement

在平时对树莓派的底层系统开发时,我需要频繁的替换kernel.img来对kernel进行更新调试。
这是我的工作流程

  1. 树莓派断电关机
  2. 从树莓派取出sd卡
  3. 把sd卡插到我的开发机上
  4. 挂载sd卡的文件系统
  5. 编写,修改程序,build出新的kernel.img
  6. 将kernel.img复制到sd卡上
  7. 卸载sd卡的文件系统
  8. 从我的开发机上取出sd卡
  9. 把sd卡插到树莓派上
  10. 树莓派上电开机

DUMMY!这个过程非常的枯燥麻烦,sd卡插不紧还会接触不良,有时候为了一个很小的改动要折腾半天。长期的插拔sd卡,也会显著降低sd slot的使用寿命,我有好几个树莓派的损坏原因只是sd slot接触不良。

Read more

低成本物联网解决方案esp01模块新手入门教程

esp8266 arduino

0. introduction

esp8266 是上海乐鑫出的低功耗WiFi芯片。搭载esp8266芯片的esp01是一个UART-WiFi无线模块,价格不到5块钱,深圳安信可出品,物美价廉,一个树莓派4的钱可以买50个!官方支持非常走心,一直在更新sdk,官方提供RTOS SDK和给低端芯片用的NONOS SDK。

esp01串口下载刷写flash非常简单,同时公司对社区的支持非常好,所以开发者做了很多移植工作,有很多开源固件,包括Lua(NodeMCU),Python(MicroPython),esp8266 Arduino,JavaScript(Espruino)等,玩法很丰富。

Read more

[RPi bring up] hello world! 树莓派裸机点亮led

树莓派 RPibringup

阅读本文您不需要掌握的知识有

  • 高深的操作系统理论
  • 高深的计算机体系结构理论

阅读本文您需要具备

  • 全日制小学生学历及其同等学历 ★★★★★
  • GNU工具链(make/GCC/LD) ★★☆☆☆
  • ARM汇编语言 ★☆☆☆☆

0. keyword

raspberry pi 1 bcm2835 armv6 hello world led blink embedded operating systems

1. abstract

得益于超大规模集成电路技术,SoC可以在单个芯片上集成CPU、GPU、内存和外设,使其成为一个五脏俱全的完整系统。因此制造尺寸更小的单板计算机成为可能。单板计算机的应用非常广泛,从家用微波炉电视机到商用加油机广告机,单板计算机无处不在。树莓派就是一款信用卡大小的单板计算机。

遗憾的是,大多数人只是用它跑一个web服务或者家用nas。而树莓派基金会最初开发树莓派的目的就是在学校中推广计算机基础科学,通过树莓派,可以很容易的将计算机体系结构和操作系统的知识付诸实践!

Read more

使用jtag和gdb实时调试Linux内核

Linux 树莓派 RPibringup
0. 关键词debug raspberry pi bcm2835 armv6 linux kernel J-Link jtag gdb 1. 摘要gdb是一款开源debugger,调试的事实标准,gdb可以帮助开发者快速定位问题。 gdb也可以作为阅读源码的工具,可以非常方便的查看运行时上下 ...
Read more

HDLbits学习记录 uwaterloo cs450

verilog

刷完HDLbits后一段时间没关注了,偶然发现最近更新了。
新增加的四道题都和处理器分支预测相关,正好我之前有相关经验,借此机会重温一下

Read more

树莓派产生 PWM 的三种方式

树莓派

Introduction

某鱼上树莓派1代a已经不到20块钱了,256MB低至15元,bcm垃圾终于价格合理了,
那谁还用8kb的单片机呀,遂入了一打,准备做个逗猫的玩意儿。

舵机需要两路 PWM,这里是我对各种实现PWM的方法总结

Read more

pcduino3 nano 移植 openwrt 19.07.6

openwrt

pcduino3 is on openwrt official supported device list https://openwrt.org/toh/pcduino/pcduino3
pcduino3 nano spec也差不多,所以只需小改就可以完美使用

Read more

树莓派裸机启动 helloworld

树莓派
moved to http://blog.74ls74.org/2022/06/18/20220618_hello_world_raspberry_pi_led_blink/
Read more

小学生也能轻松理解的文件系统fat32

programming

Introduction

相对于用树实现的 ext2 等,fat32 是一种结构非常简单的文件系统。据传最初的fat文件系统是1977年比尔盖茨发明的,在多年以后的当下仍然是一个常用的文件系统格式,经久不衰。本文的讨论只限于当前仍在广泛使用的 fat32 ,旨在利用直白的语言和dd命令示例来帮助大家完全理解 fat32。

Read more
Prev Next