原创 ESP32在Windows(Win10)下開發

折騰了好幾次關於ESP32的環境開發,網站上各個地方也有自己的做法,用文本編輯器Eclipse、VScode、Vistual Studio、Arduino開發,不過使用這些文本編輯器,必須要在文本編輯器中配置工具鏈和構建工具以及添

原创 新手VMware虛擬機下Smart4418之U-boot燒寫至開發板

操作環境: 開發板:友善之臂smart4418 電腦操作系統:Windows10 64位 專業版 虛擬機軟件:VMware Workstation 1.首先參考smart4418的Wiki操作,如下: 安裝交叉編譯器 首先下載並解

原创 Alientek I.MX6UL Linux- 第十三章 BSP工程管理實驗

  主要內容工程文件管理,以便後續大工程的開發,而且顯得美觀、模塊清晰、易於閱讀。 工程結構如下: ledc_bsp └───imxdownload(sd卡燒寫文件) └───Makefile └───imx6ul.lds └──

原创 Alientek I.MX6UL Linux- 第十一章 模仿STM32驅動開發格式實驗

相對於C語言編寫LED的優點在於不用每一個寄存器都要定義地址,用結構體成員地址遞增的方式指向這個外設寄存器的基地址。 imx6ul.h文件(示例代碼11.2.1 imx6ul.h文件代碼) /*******************

原创 Alientek I.MX6UL Linux-第八章 彙編LED燈實驗

第八章 彙編LED燈實驗 GPIO功能圖 IO控制初始化所需要用到的寄存器 1. SW_MUX_CTL Register   Address:20E_0000h base+5Ch offset=20E_005Ch UART1

原创 Alientek I.MX6UL Linux-第九章 I.MX6U的啓動方式

啓動方式選擇   BOOT模式有兩種   1.改寫eFUSE(熔絲);   2. 修改相應的GPIO高低電平。   第一種修改eFUSE的方式只能修改一次,後面就不能再修改了,所以作爲學習與調試我們不能使用。第二種是修改GPIO對

原创 Alientek I.MX6UL Linux- 第十二章 官方SDK移植實驗

  本章主要內容是使用NXP官方SDK庫進行裸機開發,其中用到的文件是如下: fsl_common.h:位置爲 SDK_2.2_MCIM6ULL\devices\MCIMX6Y2\drivers\fsl_common.h。 fs

原创 Alientek I.MX6UL Linux- 第七章 ARM彙編基礎

  學習彙編的目的:初始化C語言運行環境。 GNU彙編語法 label:instruction@comment label:標號,表示地址位置,有些指令前面可能會有標號 instruction:指令,即彙編指令或者僞指令 @:註釋

原创 Alientek I.MX6UL Linux- 第十章 C語言版LED實驗

  主要內容,弄清楚進入C語言環境需要兩部分文件,彙編文件和C語言文件,彙編文件主要作用是用來初始化C語言環境的,比如DDR和設置堆棧指針SP等等。 彙編文件(示例代碼10.3.1.2 start.s文件代碼) 彙編文件主要內容:

原创 Alientek I.MX6UL Linux-第三十一章U-Boot頂層Makefile詳解

編譯後的uboot源碼文件 arch   存放架構有關的文件,比如arm、avr32、m68k等,我們現在用的是arm芯片。我們需要重點關注的文件夾與文件是 arch─>arm─>cpu─>armv7 └─>cpu─>

原创 Alientek I.MX6UL Linux-第十六章主頻和時鐘配置實驗

  I.MX6U的系統主頻爲528MHz,有些可以跑到696Mhz,默認內部boot rom會將I.MX6U的主頻設置爲396Mhz。 7路PLL時鐘源   這7組時鐘源都是從24MHz晶振PLL而來的,結構如下圖所示: 初級P

原创 Alientek I.MX6UL Linux- 第六章 Contex-A7 MPCore架構

Contex-A處理器運行模型 以前的ARM處理器有七種運行模式,現在有九種,新增加Monitor和Hyp運行模式。 模式 描述 USR(User) 用戶模式,非特權模式,大部分程序運行的時候處於此模式 FIQ

原创 IAR下移植MDK工程可能遇到的問題

1.彙編引用不一樣,註釋掉的是MDK下的彙編編寫 //THUMB指令不支持彙編內聯 //採用如下方法實現執行彙編指令WFI /* __asm void WFI_SET(void) { WFI; } //關閉所有中斷(但是不包

原创 關於RT-Thread多串口,不能使用或中斷衝突卡死的問題

MPU:STM32F103RCT6 使用正點原子編寫的RTT的串口驅動包,工程用到的串口是USART1和UART5,USART1作爲控制檯輸出,UART5作爲其他外設的通信。 首先來解釋一下下面一句,這句講的是設置哪個串口作爲控制

原创 橢圓曲線方程加解密算法研究(一)

前言 ECC英文全稱“Elipse’ Curve Cryptography”。 待續…