原创 C語言中內存操作函數memset
三、memset 名稱: memset 功能: 初始化所指定的內存空間 頭文件: #include <stdlib.h> 函數原形: void *memset(void *buffer,int c,i
原创 Linux 獲取本機IP地址
Linux 獲取本機IP地址 IP地址分爲IPv4和IPv6,本文只驗證了IPv4的獲取,至於IPv6還沒有驗證。 說明: family = AT_INET :IPv4 family
原创 WinCE中中斷的處理過程
中斷是硬件與軟件打交道的重要方法,因此,大多數驅動程序都涉及到對中斷的處理,本文就驅動程序的開發人員以及BSP的開發人員的角度,來談談WindowsCE中中斷的處理過程。 如果一個驅動程序要處理一箇中斷,那麼驅動程序需要首先建
原创 IAR的精確延時程序
C語言中,想使用精確的延時程序並不容易。IAR 中有這樣的一個函數__delay_cycles(),該函數在頭文件intrinsics.h中定義,函數的作用就是延時N個指令週期。根據這個函數就可以實現精確的延時函數了(但不能做到100%
原创 一個點對點的UDP Socket建立過程
1.定義一個結構(host_sockaddr_in) ,並把通訊的另一端的信息填充 2.定義一個結構(local_sockaddr_in),並把本機的信息填充 3.創建一個Socket 4.綁定本機端口,作爲本機監聽接收端口 5.根
原创 Linux的硬鏈接 軟鏈接
首先要弄清楚,在Linux系統中,內核爲每一個新創建的文件分配一個Inode(索引結點),每個文件都有一個惟一的inode號。文件屬性保存在索引結點裏,在訪問文件時,索引結點被複制到內存在,從而實現文件的快速訪問。 鏈接是一種在共
原创 學習書籍資料整理收集
以下是網絡上收集的學習資料,向前輩們學習靠攏! 1.嵌入式系統Linux開發實戰指南(ARM平臺) 該書凝聚了作者12年的工作經驗和學習心得與體會,內容覆蓋了嵌入式系統 Linux內核開發的各個方面。 作者根據自己11年的一線工作經驗,
原创 PCB Layout 個人總結
◆ 電解解電容遠離熱源 ◆ 電源先經過濾波電容,再想其他器件供電 ◆ 電源分支要從源頭分,儘量先經過功耗小的,電流變化小的器件,最後才經過功耗大的,電流變化大的器件。 ◆ 地線和電源線一起走,地線儘可能粗點 ◆
原创 C語言中內存操作函數 - malloc/calloc ,free
一、malloc/calloc 名稱: Malloc/calloc 功能: 動態內存分配函數 頭文件: #include <stdlib.h> 函數原形: void *malloc(size_t si
原创 時鐘/數據/地址線上串聯一個小電阻…
這個電阻有兩個作用: 第一是阻抗匹配。因爲信號源的阻抗很低,跟信號線之間阻抗不匹配(關於阻抗匹配,請參看註解的“如何理解阻抗匹配”),串上一個電阻後,可改善匹配情況,以減少反射,避免振盪等。 第二是可以減少信號邊沿的
原创 C語言中內存操作函數 - memcpy ,memmove
四、memcpy 名稱: memcpy 功能: 拷貝內存空間 頭文件: #include <stdlib.h> 函數原形: void *memcpy(void *dest,void *src,unsi
原创 EWAVR中flash變量,eeprom變量的…
IAR中的變量可以定義在RAM中,也可以定義在FLASH和EEPROM中,可以用關鍵字__flash和__eeprom實現 。 flash變量只能讀,不能寫。也就是隻能定義常量。 unsigned char
原创 萬利STM3210B-LK1使用JLINK
萬利STM3210B-LK1自帶一個ST-LINK ,而且只能在IAR 4.20下使用。這個有點鬱悶!經過研究STM3210B-LK1的原理圖,經過小小改動就可以通過板上的EXT JTAG 接口使用JLINK. 具體修改方法:
原创 s3c2410裸跑uC/GUI
s3c2410裸跑uC/GUI Author:Jackwen Email:[email protected] Target Board:GEC2410 FTF LCD: Sharp 3.5 240*320 uC/GUI Softwa
原创 MEGA48馴狗經歷
爲了讓MEGA48放狗,一開始沒善待MEGA48的狗,結果這隻狗變成瘋狗,跑出來到處咬人!折騰了一個晚上。 這隻瘋狗咬人的過程: 當我把系統初始化完畢之後,放了狗(1024K分頻,8S定時溢出)。在測試看門狗定時溢