freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

單片機和嵌入式系統(tǒng)linux的區(qū)別-資料下載頁

2025-04-01 23:27本頁面
  

【正文】 0。S3C2410_GPB7_OUTP,S3C2410_GPB8_OUTP,}。/* 應(yīng)用程序?qū)υO(shè)備文件/dev/leds執(zhí)行open(...)時,* 就會調(diào)用s3c24xx_leds_open函數(shù)*/static int s3c24xx_leds_open(struct inode *inode, struct file *file){int i。for (i = 0。 i 4。 i++) {// 設(shè)置GPIO引腳的功能:本驅(qū)動中LED所涉及的GPIO引腳設(shè)為輸出功能s3c2410_gpio_cfgpin(led_table[i], led_cfg_table[i])。}return 0。}/* 應(yīng)用程序?qū)υO(shè)備文件/dev/leds執(zhí)行ioclt(...)時,* 就會調(diào)用s3c24xx_leds_ioctl函數(shù)*/static int s3c24xx_leds_ioctl(struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg){if (arg 4) {return EINVAL。}switch(cmd) {case IOCTL_LED_ON:// 設(shè)置指定引腳的輸出電平為0s3c2410_gpio_setpin(led_table[arg], 0)。return 0。case IOCTL_LED_OFF:// 設(shè)置指定引腳的輸出電平為1s3c2410_gpio_setpin(led_table[arg], 1)。return 0。default:return EINVAL。}}/* 這個結(jié)構(gòu)是字符設(shè)備驅(qū)動程序的核心* 當(dāng)應(yīng)用程序操作設(shè)備文件時所調(diào)用的open、read、write等函數(shù),* 最終會調(diào)用這個結(jié)構(gòu)中指定的對應(yīng)函數(shù)*/static struct file_operations s3c24xx_leds_fops = {.owner = THIS_MODULE, /* 這是一個宏,推向編譯模塊時自動創(chuàng)建的__this_module變量 */.open = s3c24xx_leds_open, .ioctl = s3c24xx_leds_ioctl,}。/** 執(zhí)行insmod命令時就會調(diào)用這個函數(shù) */static int __init s3c24xx_leds_init(void){int ret。/* 注冊字符設(shè)備* 參數(shù)為主設(shè)備號、設(shè)備名字、file_operations結(jié)構(gòu);* 這樣,主設(shè)備號就和具體的file_operations結(jié)構(gòu)聯(lián)系起來了,* 操作主設(shè)備為LED_MAJOR的設(shè)備文件時,就會調(diào)用s3c24xx_leds_fops中的相關(guān)成員函數(shù)* LED_MAJOR可以設(shè)為0,表示由內(nèi)核自動分配主設(shè)備號*/ret = register_chrdev(LED_MAJOR, DEVICE_NAME, amp。s3c24xx_leds_fops)。if (ret 0) {printk(DEVICE_NAME can39。39。39。39。t register major number\n)。return ret。}printk(DEVICE_NAME initialized\n)。return 0。}/** 執(zhí)行rmmod命令時就會調(diào)用這個函數(shù) */static void __exit s3c24xx_leds_exit(void){/* 卸載驅(qū)動程序 */unregister_chrdev(LED_MAJOR, DEVICE_NAME)。}/* 這兩行指定驅(qū)動程序的初始化函數(shù)和卸載函數(shù) */module_init(s3c24xx_leds_init)。module_exit(s3c24xx_leds_exit)。. 應(yīng)用程序開發(fā)的區(qū)別 對于不帶操作系統(tǒng)的應(yīng)用編程,應(yīng)用程序和驅(qū)動程序之間的間隔并不明顯。舉個例子,要在LCD上顯示字母“a”,在單片機上的做法是:① 事先在Flash上保存“a”的點陣數(shù)據(jù),假設(shè)它的象素大小是8x8,那么這個點陣大小就是8x8=64 bits,即8字節(jié)② 應(yīng)用程序讀取這64bit數(shù)據(jù),逐個象素地在LCD上描點相對的,基于操作系統(tǒng)的應(yīng)用編程,就不需要懂得硬件知識,執(zhí)行一個簡單的“echo a /dev/tty1”就可以在LCD上顯示“a”了。 不帶操作系統(tǒng)的應(yīng)用程序,可借用的軟件資源很少;帶操作系統(tǒng)的應(yīng)用程序,網(wǎng)上各種開源的軟件很多。比如要做一個播放器,在不帶操作系統(tǒng)上實現(xiàn)會非常困難;如果是在Linux下,有現(xiàn)成的。 不帶操作系統(tǒng)的應(yīng)用程序,各個任務(wù)是串行執(zhí)行的;帶操作系統(tǒng)的應(yīng)用程序,各個任務(wù)是并行執(zhí)行的。 不帶操作系統(tǒng)的應(yīng)用程序,一旦發(fā)生程序錯誤,整個系統(tǒng)將崩潰帶操作系統(tǒng)的應(yīng)用程序,即使發(fā)生了程序錯誤,操作系統(tǒng)本身并不會崩潰
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1