LinuxDev 板


LINE

你好!! 下面是我目前爬文 看到ARM9有code 可以把led.c檔 轉成 led.bin檔 透過sd卡 燒錄到IC 0x00000000 地址 這樣開機過後就可以直接 驅動IO port 執行程式 http://www.dmatek.com.cn/bbs/Announce/Announce.asp?BoardID=10&ID=3285&p=12&Upflag=1&q=1&r=2083 我是參考這個 -------先SHOW出我編譯最後的結果 make------- root@rit-EELAB:/home/rit/linux_system/arm_start_test# make /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-gcc -g -c -o crt0.o crt0.S /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-gcc -g -c -o S0321.o S0321.c /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux-ld -Ttext 0x00000000 -g crt0.o S0321.o -o S0321_elf S0321.o: In function `main': /home/rit/linux_system/arm_start_test/S0321.c:48: undefined reference to `printf' make: *** [S0321.bin] Error 1 root@rit-EELAB:/home/rit/linux_system/arm_start_test# 可以編譯出 S0321.o crt0.o 然後計沒了@@ -------以下是我的程式------- <makefile> { CC = /usr/local/arm/4.3.1-eabi-armv6/usr/bin/arm-linux- ARCH = arm 6410X_KERNEL_DIR = /home/rit/linux_system/dma6410L-linux-2.6.27 export PATH=/usr/local/arm/4.3.1-eabi-armv6/usr/bin/:$PATH S0321.bin: crt0.S S0321.c $(CC)gcc -g -c -o crt0.o crt0.S $(CC)gcc -g -c -o S0321.o S0321.c $(CC)ld -Ttext 0x00000000 -g crt0.o S0321.o -o S0321_elf $(CC)objcopy -O binary -S S0321_elf S0321.bin clean: rm -f *.ko *.o *.bak *.mod.* *.bin *_elf } <S0321.c> { #include <common.h> #include <exports.h> #include <stdio.h> #include <stdlib.h> int main(void) { printf("Hello, world!\n"); return 0; } } <crt0.S> { .text .global _start _start: ldr r0, =0x7E004000 mov r1, #0x0 str r1, [r0] ldr sp, =1024*4 bl main halt_loop: b halt_loop } 謝謝!! --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.23.55.19
1F:推 shaopin:既然弄到這麼底層, 你要在深入一點, printf之所以能print 04/01 23:33
2F:→ shaopin:也是因為有底曾function支援, UART, putchar, print_strin 04/01 23:34
3F:→ shaopin:這些library都沒link到的話, 他是怎麼會自動show 字串出來 04/01 23:35
4F:推 askacis:推樓上,自己寫printf函式對應到你的輸出裝置,UART或是LCD 04/02 14:45
5F:推 askacis:另外,你都要自己跳轉到main了,應該也就沒必要再include 04/02 14:51
6F:推 askacis:標準函式庫的東西了... 04/02 14:57
7F:推 askacis:原po可以參考一下uboot的printf怎麼做的... 04/02 15:16
8F:推 i386:你可能要先看一下datasheet或是其他的source code,者出如何 04/05 00:24
9F:→ i386:設定你的uart...如果你知道uart是怎樣運作的話,其實就算不寫 04/05 00:24
10F:→ i386:printf也可以把文字印出來.. 04/05 00:26
11F:→ i386:如果要作non-OS的程式,個人建議不要include C library的東西 04/05 00:27
12F:→ i386:除非你很清楚知道你要做的是什麼... 04/05 00:27
13F:→ i386:以原PO的情況,要看到"Hello, world!"重點在於UART設定好了沒 04/05 00:49
14F:→ i386:而不是printf這個function的實做.. 04/05 00:50
15F:→ opcode:libc 在你的 toolchain 裡面就有了.. 找到然後設定連結.. 04/08 16:29
16F:→ opcode:原來沒OS..搞錯 04/08 16:32
17F:→ saveload2001:各位大大好~ 我現在把程式加在u-boot裡 04/08 16:39
18F:→ saveload2001:目前是用U-BOOT改 可以做到開機直接執行的效果 04/08 16:40
19F:→ saveload2001:我覺得是原來那個檔案是library都沒正確link到 04/08 16:41
20F:→ saveload2001:加上編譯出來的程式 沒將IC初始化 也不能用 04/08 16:42
21F:→ saveload2001:總之 我把程式附加在 原本要編譯u-boot的檔案裡 04/08 16:43
22F:→ saveload2001:感謝! 04/08 16:44
23F:推 askacis:你原先的那個程式就等於一個超小型的uboot:) 04/08 17:13
24F:→ askacis:那隻組語裡面 bl main幫你跳轉到main取代了本來C library 04/08 17:15
25F:→ askacis:連結之後幫你跳轉main的步驟,u-boot也是在start.s裡幫你 04/08 17:18
26F:→ askacis:跳轉到C code的入口點函式start_armboot 04/08 17:18
27F:→ askacis:原PO有興趣的話可以研究一下標準C lib怎麼幫你轉到main() 04/08 17:20
28F:→ askacis:會發現你的那個組語crt0.S 其命名是有點意義的:) 04/08 17:20
29F:→ saveload2001:感謝! 04/11 10:49







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:e-shopping站內搜尋

TOP