原创 i.MX6模組MYC-6ULX使用

最近一個項目使用得是米爾的MYC-Y6ULY2系列模組,該模組基於飛思卡爾的i.MX6系列處理器 內核 ARM® Cortex-A7 主頻 800M 模組內置 512MB DDR3 模組內置 4G eMMC SD Card*1: Cons

原创 Linux使用設備樹的i2c驅動與設備匹配方式

Linux使用設備樹的i2c驅動與設備匹配有3種方式: of_driver_match_device acpi_driver_match_device i2c_match_id 源碼: static int i2c_device_mat

原创 O_DIRECT打開文件失敗

內核版本: Linux 4.1.39-g35786aadeab-dirty 文件系統:UBIFS 返回錯誤errno值:22     對應  EINVAL 官網說明:https://man.cx/open(2) EINVAL   T

原创 RT-thread學習筆記之線程切換

年初的時候學習的RT-thread,時間久了有些東西都又忘了,這裏記錄一下自己的學習筆記方便回顧,請參考RT-thread的官方編程指南,裏面講解的其實很詳細。 RT-thread在Cortex-M內核中是通過人爲觸發PendSV異常中

原创 dts : rx8025t與lm75bd

外部RTC芯片rx8025t的時序與rx8025其他系列不同,但是兼容ds1307,可在內核中選擇ds1307的驅動。溫度芯片lm75bd兼容lm75a系列,可直接在內核中選擇lm75a驅動。 &i2c2 { clock

原创 Coreutils交叉編譯

Coreutils包括常用的shell命令,由於自己編譯的busybox的mv命令不支持 -T 參數所以重新交叉編譯一下移植: 編譯版本: Coreutils-8.27 下載: wget https://ftp.gnu.org/gnu/

原创 make: aarch64-himix100-linux-gcc: Command not found

按照海思文檔安裝完交叉編譯器後執行: sudo make CROSS_COMPILE=aarch64-himix100-linux- -j 20 報錯: make: aarch64-himix100-linux-gcc: Comman

原创 STM32移植FreeModBus

MCU:STM32F4xx 普通庫 移植主要是Uart和定時器 portserial.c #include <stdio.h> #include "port.h" /* ----------------------- Modbus i

原创 STM32F103硬件I2C Slave

MCU:STM32F103 IDE:STM32CubeIDE HAL庫 硬件I2C當作Slave,模擬EEPROM行爲 測試工具:樹莓派爲I2C主機,使用I2C-tools進行測試 配置I2C:從機地址可直接在代碼中修改,記得開啓中斷

原创 STM32F407硬件I2C Slave

MCU:STM32F407ZET6 IDE:STM32CubeIDE HAL庫 硬件I2C當作Slave,模擬EEPROM行爲 測試工具:樹莓派爲I2C主機,使用I2C-tools進行測試 配置I2C爲Slave,從機地址直接在代碼中修改

原创 STM32F0xx移植EasyFlash

MCU: STM32F072 FLASH: W25Q128 庫:HAL SPI: SPI模式 IDE: STM32CubeIDE 1.1.0 裸機移植 EasyFlash基於FAL(FLASH抽象層) ,FAL基於SFUD(Serial

原创 STM32L475裸機移植LittleFS

MCU: STM32L475 FLASH: W25Q128 SPI模式: QSPI IDE: STM32CubeIDE1.1.0 flash驅動使用SFUD(Serial Flash Universal Driver) 配置QSPI和調試

原创 Linux內核調試工具

Strace:追蹤系統調用路徑 systemtap:基於kprobe kexec:從運行的內核裝載另一個內核 kdump:崩潰轉存 kprobe:內核裏設置探針 kdb:內核調試 kgdb:用另一臺機器配合gdb調試內核 objdump:

原创 UBI及EXT4文件系統

UBIFS介紹: 由於超大容量Nand Flash的普及,YAFFS等皆無法再去控制Nand Flash的空間,於是在2006年由IBM與Nokia的工程師設計開發了UBI(Unsorted Block Image)及其UBIFS文件系統

原创 Ubuntu虛擬機使用Debos構建Debian10

Ubuntu虛擬機版本:19.04  Golang版本:   1.13.4 linux/amd64 步驟: 1.安裝必要軟件:  sudo apt install golang git libglib2.0-dev libostree