Keil 下生成LIB庫文件以及如何使用LIB庫文件
如何生成LIB庫文件?
1. 首先准備好生成LIB庫文件對應的.c和.h文件,我這里用到的.c和.h文件分別是:
commLib.h:
- /*======================================================*/
- /* 延時函數,單位ms */
- /* 晶振頻率為11.0592MHz時延時1ms子程序 */
- /*======================================================*/
- void delay(int ms);
- /*======================================================*/
- /* 循環左移函數 2015年7月27日 21:34:44 */
- /*======================================================*/
- unsigned char ccCrol(unsigned char org, unsigned char bitNum);
- /*======================================================*/
- /* 循環右移函數 2015年7月29日 21:40:39 */
- /*======================================================*/
- unsigned char ccCror(unsigned char org, unsigned char bitNum);
/*======================================================*/ /* 延時函數,單位ms */ /* 晶振頻率為11.0592MHz時延時1ms子程序 */ /*======================================================*/ void delay(int ms); /*======================================================*/ /* 循環左移函數 2015年7月27日 21:34:44 */ /*======================================================*/ unsigned char ccCrol(unsigned char org, unsigned char bitNum); /*======================================================*/ /* 循環右移函數 2015年7月29日 21:40:39 */ /*======================================================*/ unsigned char ccCror(unsigned char org, unsigned char bitNum);
commLib.c:
- /*======================================================*/
- /* 延時函數,單位ms */
- /* 晶振頻率為11.0592MHz時延時1ms子程序 */
- /*======================================================*/
- void delay(int ms)
- {
- int i, j;
- for (i = ms; i > 0; i--)
- {
- for (j = 110; j > 0; j--)
- {
- }
- }
- }
- /*======================================================*/
- /* 循環左移函數 2015年7月27日 21:34:44 */
- /*======================================================*/
- unsigned char ccCrol(unsigned char org, unsigned char bitNum)
- {
- unsigned char i;
- unsigned char high, low;
- unsigned char after = org;
- for (i = 0; i < bitNum; i++)
- {
- high = after & 0x80;
- low = high >> 0x07;
- after <<= 0x01;
- after |= low;
- }
- return after;
- }
- /*======================================================*/
- /* 循環右移函數 2015年7月29日 21:40:39 */
- /*======================================================*/
- unsigned char ccCror(unsigned char org, unsigned char bitNum)
- {
- unsigned char i;
- unsigned char high, low;
- unsigned char after = org;
- for (i = 0; i < bitNum; i++)
- {
- low = after & 0x01;
- high = low << 0x07;
- after >>= 0x01;
- after |= high;
- }
- return after;
- }
/*======================================================*/ /* 延時函數,單位ms */ /* 晶振頻率為11.0592MHz時延時1ms子程序 */ /*======================================================*/ void delay(int ms) { int i, j; for (i = ms; i > 0; i--) { for (j = 110; j > 0; j--) { } } } /*======================================================*/ /* 循環左移函數 2015年7月27日 21:34:44 */ /*======================================================*/ unsigned char ccCrol(unsigned char org, unsigned char bitNum) { unsigned char i; unsigned char high, low; unsigned char after = org; for (i = 0; i < bitNum; i++) { high = after & 0x80; low = high >> 0x07; after <<= 0x01; after |= low; } return after; } /*======================================================*/ /* 循環右移函數 2015年7月29日 21:40:39 */ /*======================================================*/ unsigned char ccCror(unsigned char org, unsigned char bitNum) { unsigned char i; unsigned char high, low; unsigned char after = org; for (i = 0; i < bitNum; i++) { low = after & 0x01; high = low << 0x07; after >>= 0x01; after |= high; } return after; }
2. 新建一個項目,將這兩個文件添加到襖項目中,並做以下設置:
選中Create Library
3. 編譯之后就可在項目目錄下生成對應的.LIB庫文件了。
如何使用LIB庫文件呢?
1. 新建一個項目,然后在你的項目中包含LIB庫文件對應的頭文件commLib.h。
如圖:
2. 添加LIB庫文件到項目中:
然后選擇你要添加的LIB庫文件:
添加完成之后就可以在項目中看到對應的庫文件了:
3. 編譯項目就OK了。