开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx

上传人:lao****ou 文档编号:377120 上传时间:2023-10-10 格式:DOCX 页数:13 大小:214.20KB
下载 相关 举报
开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx_第1页
第1页 / 共13页
开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx_第2页
第2页 / 共13页
开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx_第3页
第3页 / 共13页
开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx_第4页
第4页 / 共13页
开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx_第5页
第5页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx》由会员分享,可在线阅读,更多相关《开发教程10AI语音人脸识别会议记录仪_人脸打卡机GPIO.docx(13页珍藏版)》请在第一文库网上搜索。

1、CC3200AI实验教程疯壳开发板系列WO1verine-Tearn2018/07/18目录1.1 TiPinMuxTooI工具21.2 代码下载61.3 实验现象8官网地址:http:WWW.fengke.c1ub购买链接:http:ShOP官方QQ群:193836402GPIOGP1O全称Genera1PurposeInputOutput即通用的输入输出,是所有控制器里必备的资源,CC3200的所有数字引脚和部分模拟引脚均可作为通用的输入输出引脚(GP1O)使用,CC3200把GP1O分为三个组,分别是GPIOA0、GP1oA1、GPIOA2、GPI0A3,每一组GP1o有8个引脚,引脚分

2、配如表G0.C所示:表1.0.1CC3200引脚分配表端口组包含的引脚GPIOAOGPIc)JX)GPI0J)7GPIOA1GPIOJ)8GPICU5GPIOA2GPIO_16-GPIO_23GPIOA3GPK)_24GPIO_31根据功能引脚配置的不同,CC3200最多可以有27个GPIO,且所有的GPIO引脚均具有中断功能,触发的方式支持电平触发和边沿触发(上升沿和下降沿),不仅如此,所有的GPIo都可以用于触发DMA、可作为唤醒源,GPIO引脚可编程:可配置为内部IOUA上拉或下拉,驱动能力可调节为:2mA、4mA、6mA、8mA、10mA12mA、14mA,同样也支持开漏模式。对GP1

3、o进行操作时,主要需要了解两大寄存器:Gpiodata寄存器、GPIoDIR寄存器。GP1C)DATA寄存器是数据寄存器。在软件控制模式下,如果对应的引脚通过GP1ODIR寄存器配置为输出模式,这写至IJGP1ODATA寄存器中的值会被传到对应引脚输出。GPIODATA寄存器有256个别名地址,偏移值为OXOOO到0x3ft。一个不同地址别名可以用来直接读/写任何8个信号位的组合。这个特性可以避免读-改-写和软件读的位掩码的时间消耗。在该方案中,为了写GP1oDATA寄存器,掩码中的对应位对应于总线中9.2位必须被置位。否则在进行写操作时,对应位的值不会被改变。同样,进行读操作时,也是对应总线

4、中的9.2,在读取对应位时,也必须置位,否则读取为Oo如果引脚配置为输出模式,则读取GPIODATA寄存器返回最后一次写入的值;如果配置为输入模式则返回对应引脚的值。所有位都可以通过复位清零。如图1.0.1所示为GPIODATA寄存器。FuS4.GPiODATARg3130292827262524232221.20W181711514131211109876543210RgSBMEDDATA一R-OhfVW-0hTab1e5-4.GPIODATARegisterFie1dDescriptionsBHFte1dTypeRtDescription31RESERVEDROhSoftwareshou1

5、dnotr1yon5va1ueofareservedbitToprovideCompabbMywithKJtUreproducts,theva1ueofareservedMshou1dbepreservedacrossaread-mcxMy-wmeoperation7-0DATARzW0GPIODataTNsregisterisV1rtUahymappedto2561ocationsintheaddressspace.TofaMatethereadingandWntIngofdatatotheseregts1ersbyindependentdrivers,tedatareadfromandWn

6、neCtotherogs1ersaremskedbytheegh1address1ines(92.Readsfromthi$registerreturnrtscurrentstateWtstothisrogs1ron1yaffectXsthatarenotmaskedbyADOR92andareconfiguredasoutputs图1.0.1GPIODATA寄存器GPIODIR寄存器是数据方向寄存器。在GPIODIR寄存器中设置一位将对应的引脚配置为输出;清除一位对应的引脚配置为输入。复位时多有位都清零,也就是说所有的GPIO引脚默认是输入。如图1.0.2所示为GPIODIR寄存器。Figu

7、re5-5.GPIODIRRegister313029282726252423222120191817161514131211109876543210RESERVEDDIRR)hRW-0hTab1e5-5.GPIODIRRegisterFie1dDescriptionsBHFie1dypRMtDscription31-8RESERVEDROh7-0DIRR/W0GPIODataDirectionOhCorresponcfengpinisaninput1hCorrespondingpinsanoutput图1.0.2GPIODIR寄存器打开配套的代码例程,打开GP1o文件夹下的IAR工程,如图1

8、.0.3所示为主函数。Intmain()(/Initia1izeBoardconfigurations/BoardInitO;/PoweronthecorrespondingGPIOportBfor9r10r11.SetuptheGPIO1inestoSIode0(GPIO)/PinMuxConfigO/t7HSESGPIO_IF_1edConfigure(1ED1I1ED2I1ED3);获取端口组及弓鲫号GPIJIJ1edOff(MCU_A11_1ED_IHD)/Startthe1EDB1inkyRoutiDe/1EDB1inkyRoutine();/青水灯return0;图1.0.3GPI

9、o的主函数1.1TiPinMuxToo1工具PinMUXConfig()函数可由TIPinMUXTOO1工具生成,打开T1PinMUXTOo1工具,如图1e).4所示,第一步,在Device内找到CC3200,第二步点击“Start”。.TIRnMux-TIaoUdToT1PinMuxDevke:AM33SDefau1tPart:Package:“StartanewPinMuxDesignOpenanExistingDesignQukk1inksT1PinMuxTooKP4geT1PinMuxWiuTIPinMuxTKOrtaiVWeoinsuAwiihb1eUpdatesaWVtd,pnmu

10、Mfi1etocontinueyourdesign.RecentDesignsI23.pnmu图1.0.4T1PinMuxTooI如图1.0.5所示,第一步点击“GPIO”处的添加,默认是选取全部GP10;第二步,把“GPIOSigna1S”前面的勾去掉,去除全选;第三步,选择GPIO_9、GP10_10、GPIO_11(对应开发板上的三颗1ED);驱动1ED需要GPIo输出,第四步,把三个GP1O的“Output”勾选上。图1.0.5T1PinMuxToo1配置步骤最终完成的如图106所示。在最右边的GeneratedFi1eS处点击,把“pin_mux_config.c”和“pinmuxc

11、onfig.h,下载下来添加到工程里即可。图1.0.6配置完成示意图生成好的端口配置函数如图1.0.7所示,该函数主要是对1ED对应的端口开启时钟、设置方向等。voidPinMuxConfig(void)3/Enab1ePeriphera1C1ocks/MAP.PRCMPeripheraIC1kEnab1e(PRCM_GPIOA1,PRCM_RW_MODE_C1K);/ConfigurePIN_64forGPIOOutput/MAP_PinTypeGPIO(PIN_64fPIN_MODE_Orfa1se);MAP_GPIODirModeSet(GPIOA1_BASE,0x2,GPIO_DIR_

12、MODE_OUT);/ConfigurePIN_01forGPIOOutput/MAP_PinTypeGPIO(PIN_01,PIN_MODE_Orfa1se);MAPeGPIODirModeSet(GPIOA1_BASE,0x4,GPIO_DIR_MODE_OUT);/ConffurePIU_02forGPIOOutput/MAP_PinTypeGPIO(PIN_02,PIN_MODE_0,fa1se);MAP二GPIODirMOdeSH(WP1oAI_BASE,0x8,GPI0_DIRJ40DE_0UT);)图1.0.7端口配置函数配置好后,通过GPIeUF.1edConfigureO函数

13、把1ED端口进行处理,即把各个1ED的端口所对应的端口组,以及属于该组中的第几个IO提取出来。如图1.0.8所示。voidGPIO_IF_1edConfigure(unsignedcharucPins)(if(ucPins&1ED1)(GPIO_IF_GetPortNPin(GPIO_1ED1,&g_ui1ED1Port,&g_uc1ED1Pin);)if(ucPins&1ED2)(GPIO_IF_GetPortNPin(GPI0-1ED2r&g_ui1ED2Port,&g_uc1ED2Pin);)if(ucPins&1ED3)(GPIO_IFeGetPortNPin(GP1Oj1ED3,&g

14、_ui1ED3Port,&g_uc1ED3Pin);)图1.0.8端口处理即按顺序以一定完成上面两步后,先关闭所有的1ED,然后在一个死循环内执行“流水”部分,的时间间隔开闭1ED,如图1.0.9为“流水”效果实现代码。void1EDB1inkyRoutine()(/Togg1ethe1inesinitia11ytoturnoffthe1EDs./Theva1uesdrivenareasrequiredbythe1EDsontheIP./GPIO_IF_1edOff(MCU_A11_1ED_IND);whi1e(1)/A1ternate1ytogg1ehi-1oveachoftheGPIOs/

15、tosvitchthecorresponding1EDonoff./MAPJJti1sDe1ay(8000000);GPIO_IF_1edOn(MCU_RED_1ED_GPIO);MAPJJti1sDe1ay(8000000);GPIO_IF_1edOff(MCU_RED_1ED_GPIO);MAP_Uti1sDe1ay(8000000);GPIO_IF_1edOn(MCU_ORANGE_1ED_GPIO);MAPiisDe1ay(86OO0);一GPIO_IF_1edOff(MCU_ORANGE_1ED_GPIO);MAP_Uti1sDe1ay(8000000);GPIO_IF_1edOn(M

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 应用文档 > 汇报材料

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服