ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

LinuxϵÄMCU¿ª·¢Ö®AVRϵÁÐ1-avrϵÁеıàÒëÉÕ¼µ÷ÊÔ·½·¨
2014-11-24 12:46:56 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:1´Î
Tags£ºLinux MCU ¿ª·¢ AVR ϵÁÐ 1-avr ±àÒë µ÷ÊÔ ·½·¨

¸½¼þÄÚÈÝ: ³ÌÐòÔ´Â룬MakefileÄ£°å£¬Ïà¹ØÎĵµ¡£


¸½¼þÏÂÔØµØÖ·£º


¾ßÌåÏÂÔØÄ¿Â¼ÔÚ /2012Äê×ÊÁÏ/5ÔÂ/25ÈÕ/LinuxϵÄMCU¿ª·¢Ö®AVRϵÁÐ1-avrϵÁеıàÒëÉÕ¼µ÷ÊÔ·½·¨/


ϵÁÐ˵Ã÷£ºLINUXϳÌÐò¿ª·¢¾ßÓÐÒ»¶¨µÄ³ÉÊìÐÔ£¬°üÀ¨´ó²¿·ÖµÄMCU£¬FPGA,DSPÉõÖÁPCBÖÆÍ¼µÈ¶¼ÊÇ¿ÉÐеġ£±¾ÏµÁн«Õë¶ÔAVRϵÁеÄMCU£¬¶øºóµÄϵÁн«»á¶ÔLinuxÏÂµÄÆäËû·½ÃæÄÚÈݽøÐÐ̽ÌÖ¡£


±¾ÎÄ»·¾³ÈçÏ£º


±àÒëÆ÷ £ºavr-gcc


ÉÕ¼Èí¼þ :avrdude


µ÷ÊÔÈí¼þ:avarice £¬GDBºÍddd £¨¿ÉÊÓ½çÃæ£©


¿ª·¢°å£º


1. xplain(xmega128a1)ÎÞ·¨µ÷ÊÔ£¬Ö»ÄÜÉÕ¼£¬ÒòΪ¹Ù·½Ã»Óй«¿ªÆäµ÷ÊÔµÄЭÒé¡£


2. Mega16¿ª·¢°å¡£


·ÂÕæÆ÷orÉÕ¼Æ÷£ºdragonºÍusbasp£¨Ê¹Óý϶ࣩ


³ÌÐò±àд£ºVim£¨Éý¼¶°æµÄ¼Çʱ¾£¬ºÜºÃÓ㬺ÜÍÆ¼ö£©


¹ØÓÚʹÓÃǰµÄ×¼±¸ºÍ˵Ã÷


ÖÁÓÚΪʲôҪʹÓÃlinuxÏ¿ª·¢avr£¬Ô­ÒòÖ÷ÒªÊÇÒòΪ±È½ÏÓÐȤ¡£Æä´Î±ãÊÇwinÏµĻ·¾³ÓÃÆðÀ´Æäʵ²¢²»ÊǺܷ½±ã¡£IARÊǸ¶·ÑÈí¼þ£¨µ«ÊǵÄÈ·ºÃÓã©£¬Avr-studioËäÈ»ÊÇÃâ·Ñ°æ£¬²»¹ýÓÅȱµãÊÇÌ«¹ýÅӴ󣬲¢ÇÒÊÇÒÔvc2010Ϊ»ù´¡¿ª·¢£¬Õâ¸öÒ²¾ÍËã²»ÉÏÕæÕýµÄÃâ·ÑÁË¡£ÖÁÓÚwin-avrÆäʵÂù²»´íµÄ¡£winÏÂÒ²¿ÉÒԴÈçÏ»·¾³¡£


×¼±¸£º


Èí¼þ°²×°£¬Èí¼þ°²×°½¨ÒéʹÓÃubuntuµÄÈí¼þÖÐÐÄ£¬±È½Ï·½±ã¡£ÐèÒªavr-gcc£¬avrdude,avarice,gdb,ddd¼´¿ÉÁË¡£Îı¾±à¼­Ê²Ã´¶¼ÐС£¿ÉÒÔ¼¯³ÉÔÚcodeblocksºÍeclipseÀïÃæ¡£CodeblocksÈç´Ë×öÓÃÆðÀ´¸Ð¾õ²»´í,eclipseÐèÒªÅäÖ㬵«Ô­Àí¶¼ÊÇÒ»ÑùµÄ¡£


¶ÔÓÚÃüÁîÐпÉÒÔÈçϰ²×°



Ç¿ÁÒ½¨Òé˳±ã°²ÉÏÊÖ²á



È»ºó¾Í¶¼°²×°Íê±ÏÁË¡£ÏÂÒ»²½¾Í¿ÉÒÔ¿ªÊ¼ÁË¡£



¿ªÊ¼Ö®Ç°ÐèÒªÏÈдһ¸ö.cµÄ³ÌÐò


´úÂë»áÔÚÎÄÕÂ×îºóºÍ¸½¼þÀïÌá³ö¡£ÕâÊÇÒ»¸öºÜ¼òµ¥ÈÃÒ»¸öledÁÁµÄ³ÌÐò¡£


Ö®ºó½éÉÜÒ»¸ömakefileµÄ¶«Î÷£¬´ËÎïÊǼò»¯²Ù×÷Á÷³ÌµÄÒ»¸ö¶«Î÷¡£ÈÃÇúöàÐÐÃüÁî²ÅÄÜÍê³ÉµÄÖ»Ðè¼òµ¥µÄÒ»¾ä»°¾ÍÐÐÁË¡£¸½¼þÀï»á°üº¬Ò»¸ömakefileµÄÄ£°å£¬ÊÇwinavrÏÂÄ£°å¸ÄµÄ¿ÉÓð档¾ßÌåµÄÄÚÈÝÊÇÈçºÎʵÏֵģ¬¿ÉÒÔ·­ÔĹٷ½makefileÊÖ²áºÍ°Ù¶È£¬¹È¸è¡£


¼òµ¥½éÉÜMakefileÀïÃæµÄ¼¸¸öÃüÁÓйý¾­Ñé¿ÉÒÔÎÞÊÓ



ÉÏÃæÕâЩ¶¼ÊǶ¨Òå±äÁ¿£¬makefileÀïµÄ



µ±ÎÒÃÇÊäÈëmake programʱ¾Í»áÖ´ÐÐÉÏÃæÕâ¾ä֮ǰµÄ¶¼²»ÓùØÐÄÁË¡£·­Òë¹ýÀ´¾Í±ä³ÉÁË(Èç¹û½Ðmain.hex)



¾ÍÊÇ˵ÓÃusbϵÄusbaspÉÕ¼m16µÄflash£¬ÄÚÈÝΪmain.hex


Èç¹ûÓÃdragonµÄ»°Ò»°ãÓÃjtag¾ÍÊÇ-c dragon_jtag¡£¾ßÌå¿ÉÒԲ鿴avrdudeÊֲᡣ


Á˽âÖ®ºóÏÈ´ò¿ªÖÕ¶Ë£¬ÕÒµ½.cÎļþĿ¼Ï¡£MakefileÎļþ·ÅÔÚͬһĿ¼ÏÂ


¸ù¾ÝÐèÒª¸ü¸ÄÆäÄÚÈÝ


ÊäÈëmake



±ã»áÊä³öһЩÐÅÏ¢£¬×îºó»áÓÐÌáʾ±àÒë³É¹¦


Ö®ºó¾Í¿ÉÒÔÉÕ¼ÁË


ÉÕ¼֮ǰ¿´Ò»ÏÂÉÕ¼Æ÷ÊÇ·ñÔÚ


ÊäÈëlsusb



ÏÔÈ»£¬usbasp´æÔÚ¡£ÄÇôÊäÈësudo make program



»áÔںܿìµÄʱ¼äÄÚÉÕ¼³É¹¦£¬±Èwin¿ìµÄ¶à¡£×îºóÌáʾÄãÉÕ¼³É¹¦



ÖÁÓÚdebug£¬usbaspûÓÐÕâ¸ö¹¦ÄÜ¡£ÐèÒªÓÃdragonµÄjtag¡£


ס£ºDebugÆäʵ²»ÊǺÜÍÆ¼öʹÓã¬ËäÈ»±È½Ï¸ßЧ£¬½¨ÒéÀûÓô®¿ÚµÄÐÅÏ¢ÊäÈëÊä³ö£¨ÒÔºó»á½éÉÜ£©£¬ÕâÊÇÒòΪÔÚ½øÈëϵͳµÄǶÈëºó£¬³£¹æµÄdebug¾­³£»áÎÞ·¨Ê¹Óá£


ʵ¼ÊµÄÃüÁî»áÊÇ



²»¹ýÈç¹ûmakefileÀïÒѾ­Ð´ºÃµÄ»°Ö±½ÓÊäÈësudo make debug¾Í¿ÉÒÔÁË


ÏÂÃæÎªÃüÁîµÄ½á¹û



ÏÖÔÚÊôÓڵȴýGDB£¬¿ÉÊÓ»¯µÄ»°¾ÍÊÇDDDµÄ״̬ÖÐÁË


±ÈÈçÔÚgdb.confÖÐÌí¼Ó


file main.elf


target remotelocalhost:4242


Æô¶¯DDD


ddd¨C-debugger ¡°avr-gdb -x gdb.conf¡±



Ò²¿ÉÒÔÊÖÆð¶¯£¬È»ºóÅäÖã¬ui½çÃæ±È½ÏÓѺá£


»¹ÓÐÒ»¾ä»°¡£makefileÀïÃæÒѾ­°ÑÉϲ½Öè¶¼×öºÃÁË¡«µ±È»»á¸ù¾ÝÐèÇóÒªÇó¸ü¸ÄµÄ¡£ÓÈÆäÊÇdebugµÄʱºò¡£


×ܽ᣺±¾ÎÄËù˵ÓÐЩ¼òÂÔÁË£¬Linux¿ª·¢µÄÀ§ÄÑÖ÷ÒªÔÚÓڴ»·¾³£¬Òò´ËÐèÒª¶à¿´Ò»ÏÂÏà¹ØµÄ¹Ù·½Êֲᡣ


²âÊÔ´úÂ룺


main.c


¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£ºQtÖ®QTimer----ÿÃë¶¼ÓÐ×Ô¼ºÒª¸É.. ÏÂһƪ£ºAWKµÄNRºÍFNRÏê½â

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ:

¡¤Linuxϵͳ¼ò½é (2025-12-25 21:55:25)
¡¤Linux°²×°MySQL¹ý³Ì (2025-12-25 21:55:22)
¡¤Linuxϵͳ°²×°½Ì³Ì£¨ (2025-12-25 21:55:20)
¡¤HTTP Åc HTTPS µÄ²î„ (2025-12-25 21:19:45)
¡¤ÍøÕ¾°²È«±ØÐ޿ΣºÍ¼ (2025-12-25 21:19:42)