
GPC1CON, R/W, Address = 0xE020_0080

GPC1DAT, R/W, Address = 0xE020_0084

舉例
#define GPC1CON *((volatile unsigned int*)0xE0200080)
#define GPC1DAT *((volatile unsigned int*)0xE0200084)
*(unsigned int*)GPC1CON &= ~(0xf << 12);
*(unsigned int*)GPC1CON |= (0x1 << 12);
*(unsigned int*)GPC1DAT &= ~(0x1 << 3);
*(unsigned int*)GPC1DAT |= (0x1 << 3);
關鍵字:S5PV210 點亮Led
引用地址:
S5PV210 點亮Led
推薦閱讀最新更新時間:2025-06-09 10:50
STM32Cube CubeIDE添加代碼點亮LED
前一篇已經生成了CubeIDE的工程代碼,接下來就要用CubeIDE打開,添加點亮LED燈的代碼了。 打開工程可以通過雙擊工程文件夾下的.cproject文件或由CubeIDE- File- Open Projects from File System選擇生成的工程打開。 1. 添加相關代碼并編譯 添加的代碼如下: HAL_GPIO_TogglePin(LED0_GPIO_Port, LED0_Pin); HAL_Delay(500); HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin); 上電后,PB0和PB1這兩個引腳都輸出低電平,所有LED0和LED1這兩個燈都是亮的
[單片機]
STM32——GPIO設置:快速點亮第一個LED燈
簡介 不同的開發板的原理圖結構也不盡相同,筆者在這里使用野火的MINI-V3(F103VET6)簡易開發板對GPIO口的設置做一個簡單的介紹,并實現按鍵控制LED燈的亮滅。方便讀者可以快速熟悉并靈活應用。 原理圖分析 首先我們來看一下發光二極管部分和按鍵部分的原理圖。 下面是按鍵的原理圖部分: 在這里,我們將使用KEY1(PA0)來控制紅燈PB5的亮滅。由原理圖可知,其控制LED燈的PB5引腳為低電平時,燈亮。當KEY1按下時,PA0引腳由之前的低電平轉為高電平(3V3)。明確了目的之后我們就可以分析GPIO口并進行設置了。 GPIO設置 經過上述的功能明確之后,我們將其分為兩大類,分別是輸入類(如按鍵)和輸出類
[單片機]
STM32單片機基礎03——使用GPIO點亮一個LED
本篇文章主要介紹如何使用STM32CubeMX初始化STM32L431RCT6的GPIO,并點亮一個LED。 1. 準備工作 硬件準備 開發板 首先需要準備一個開發板,這里我準備的是 STM32L4的開發板(BearPi) : 軟件準備 需要安裝好Keil - MDK及芯片對應的包,以便編譯和下載生成的代碼; Keil MDK和串口助手的安裝包都可以關注“小熊派開源社區”微信公眾號,在資料教程一欄中可獲取安裝包。 2.生成MDK工程 選擇芯片型號 打開STM32CubeMX,打開MCU選擇器: 搜索并選中芯片STM32L431RCT6: 配置時鐘源 如果選擇使用外部高速
[單片機]
創建keil工程并點亮STM32板子的LED燈
打開之前創建的工程,如下圖所示(keil工程的創建在之前的文章中有,不了解的同學可以翻一下上一篇文章。) (上圖是已經建立完成的工程) 然后,再次打開我們之前下載的對應開發板版本的例程包中的點亮LED燈的例程 (路徑為:en.stsw-stm32077 \STM32L1xx_StdPeriph_Lib_V1.3.1 \project\STM32L1xx_StdPeriph_Examples \GPIO \IOToggle) 找到mian.c文件打開,全選復制里面的內容 再回到我們之前已經創建完畢的工程中,打開mian.c文件清空,并將GPIO文件中的main.c里面的內容粘貼到我們工程的mian.c中。 此時可以看到有很多
[單片機]
第五章之S5PV210將u-boot.bin從SD卡中搬到DDR中
1,在完成上一節的memory初始化后,接下來在arch/arm/cpu/armv7/start.S的160行:如下圖 2,跳轉到arch/arm/lib/board.c下的board_init_f函數,如下圖: 3,在285行的memset函數,此函數地址在0x3481c8c4,屬于在BL2的地址范圍。而_start地址在:0x34800000,很明顯memset函數超出了BL1的16K的大小范圍。 所以必需把BL2搬到DDR中,并且本身跳到DDR中執行BL2中的代碼。 4,BL2移到內存中的代碼,在光盤裸機代碼的src下sdram中,刪除了跳轉,代碼如下 1 /**************************
[單片機]
TQ210——S5PV210啟動過程
1、S5PV210內存地址映射 S5PV210 含有一個大小為64KB的IROM,起始地址為0xD0000000,結束地址為0xD000FFFF;含有一個大小為96KB的 IRAM,起始地址為0xD0020000,結束地址為0xD0037FFF;內存起始地址為0x20000000,有二個內存塊,DRAM0 和 DRAM1 大小分別為 512MB、 1024MB。 2、S5PV210啟動流程分析 SRAM:0XD0020000 S5PV210啟動過程主要可分為 3 個階段 ① S5PV210 上電復位后執行已固化的啟動代碼 BL0。 ② 在 BL0 初始化過程中,對啟動設備進行判斷,并從啟動設備拷貝
[單片機]
TQ210——S5PV210中斷體系
中斷是指 CPU 在執行程序的過程中,遇到異常情況需要處理, CPU停 止當前程序的運行,保存當前程序運行處的必要參數,轉去處理這些異常情況, 處理結束后再返回當前程序的間斷處,繼續執行原程序。 1、異常向量表 2、一級異常處理 #define pExceptionIRQ ( *((volatile unsigned long *)(0xD0037418)) ) pExceptionIRQ = (unsigned long)IRQ_handle; IRQ_handle: sub lr, lr, #4 // 保存現場 stmfdsp!, {r0-r12, l
[單片機]
S5PV210的NandFlash應用(二)
準備分析 《S5PV210的NandFlash應用(一)》有很多bug,為了文章完整性就不在原文上進行修改了。(一)是在調試nand_cp.c的時候,程序運行過之后,燈立即亮了起來,讓我誤以為我的NandFlash讀操作正常了,最后在往下進行大文件拷貝的時候出現異常,我不得不重新回到這個Nand_cp.c這里來。這次結合Uart打印出NandFlash讀出的數據,和210.bin文件進行對比,發現后邊錯誤很多,但是我的程序也能運行。總結出了(一)里邊的bug有:1.nand_cp.c中應該調用board_init_f_nand(),而非copy_uboot_to_ram_nand()。2.board_init_f_nand中的
[單片機]