|
Íàó÷èòå êðàñèâî äåðãàòü íîæêàìè STM32 |
|
|
|
Jul 6 2016, 15:40
|
Ìåñòíûé
  
Ãðóïïà: Ó÷àñòíèê
Ñîîáùåíèé: 491
Ðåãèñòðàöèÿ: 18-05-11
Ïîëüçîâàòåëü ¹: 65 102

|
Çäðàâñòâóéòå! Ó ìåíÿ íà ïëàòå ïîëíî ðàçíûõ ñèãíàëîâ óïðàâëåíèÿ îò STM32F429.  ïðîãðàììå íóæíî èìè âñåìè ìàíèïóëèðîâàòü. Èñïîëüçîâàòü ñòàíäàðòíûå ôóíêöèè HAL íåóäîáíî, ïðè íàïèñàíèè ïðîãðàììû ïðèäåòñÿ ÷àñòî îòâëåêàòüñÿ íà ïëàòó, ÷òîáû ïîñìîòðåòü, ãäå íîæêè ðåàëüíî ðàñïîëîæåíû. Äàæå åñëè äåôàéíîì ïðèñâîèòü èìÿ êàêîìó òî âûâîäó, íåïîíÿòíî íà êàêîì îí ïîðòå - íàäî ñìîòðåòü ïëàòó. Êîä HAL_GPIO_WritePin(GPIOA,DAC_RESET,GPIO_PIN_SET); Êîëëåãà îáîðà÷èâàåò òàêèå âåùè â ôóíêöèè Êîä void gpioDACRESET(void) { HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET); } Íî ýòî òîæå íå äåëî. Ïîäñêàæèòå, êàê âû ðåøàåòå òàêèå ïðîáëåìû?
|
|
|
|
|
 |
Îòâåòîâ
|
Jul 8 2016, 09:33
|
Ìåñòíûé
  
Ãðóïïà: Ó÷àñòíèê
Ñîîáùåíèé: 491
Ðåãèñòðàöèÿ: 18-05-11
Ïîëüçîâàòåëü ¹: 65 102

|
Öèòàòà(jcxz @ Jul 8 2016, 00:50)  Æåñòü êàêàÿ.... Îòêðîéòå ó÷åáíèê ïî ñè! Ìàêðîñ - ýòî íå ôóíêöèÿ: #define SET(GPIOx, GPIO_Pin) ... Èçâèíèòå, ÿ ìàêðîñàìè íèêîãäà íå ïîëüçîâàëñÿ, ïðîñòî ó turnon áûëî íàïèñàíî gpioSet(GPIO_TypeDef* GPIOx, PIN_TYPE pin, uint8_t state), ïîýòîìó ÿ òîæå íà÷àë òèïû âñòàâëÿòü.  îáùåì, ñäåëàë òàê Êîä // Òåñòîâûå òî÷êè #define TEST_X1 GPIOC,GPIO_PIN_14 #define TEST_X2 GPIOG,GPIO_PIN_12 #define TEST_X3 GPIOG,GPIO_PIN_13
#define SET(port_pin) HAL_GPIO_WritePin(port_pin,GPIO_PIN_SET) #define RESET(port_pin) HAL_GPIO_WritePin(port_pin,GPIO_PIN_RESET) #define TOGGLE(port_pin) HAL_GPIO_TogglePin(port_pin)
//âûçîâ TOGGLE(TEST_X1); SET(TEST_X2); RESET(TEST_X3);
|
|
|
|
|
Jul 8 2016, 11:20
|
Ãóðó
     
Ãðóïïà: Ñâîé
Ñîîáùåíèé: 5 228
Ðåãèñòðàöèÿ: 3-07-08
Èç: Îìñê
Ïîëüçîâàòåëü ¹: 38 713

|
Âîò òåïåðü óæå ëó÷øå. Ó ìåíÿ â ïðîåêòàõ ïðèìåðíî òàêæå, òîëüêî ïèí ÿ îïðåäåëÿþ êîðî÷å: #define PIN_SSP1_SCLK F, 4 #define PIN_SSP1_TX 1, 4 #define PIN_SSP1_RX 1, 3 #define PIN_LCD_LED 6, 9 Åñëè íóæíî, ïîòîì ê íèì ìîæíî ïðèêëåèòü íåîáõîäèìûå ïðåôèêñû/ñóôôèêñû (òèïà GPIO): GPIO##port âíóòðè ìàêðîñîâ Ïîäîáíî: #define SET_(port, pin) GPIO##port, GPIO_PIN_##pin #define SET(port_pin) SET_(port_pin) È íå ïîëüçóþñü íèêàêèìè HAL-àìè, à ïðÿìî âíóòðè ýòèõ ìàêðîñîâ îáðàùàþñü ê ðåãèñòðàì GPIO.
|
|
|
|
|
Jul 8 2016, 12:05
|

íåîòÿãîù¸ííûé çëîì
     
Ãðóïïà: Ñâîé
Ñîîáùåíèé: 2 746
Ðåãèñòðàöèÿ: 31-01-08
Èç: Ñàíêò-Ïåòåðáóðã
Ïîëüçîâàòåëü ¹: 34 643

|
Öèòàòà(jcxz @ Jul 8 2016, 14:20)  òîëüêî ïèí ÿ îïðåäåëÿþ êîðî÷å: È çðÿ. Âû ëèøàåòå ñåáÿ òàêèõ áëàã êàê: Êîä pin_init(PIN_RTC_SELECT); ... pin_drive(PIN_RTC_SELECT, 1); // do something pin_drive(PIN_RTC_SELECT, 0); Êàê âèäèòå, ñîâñåì íå íàäî çàïàðèâàòüñÿ íè î èíèöèàëèçàöèè, íî î àêòèâíîì óðîâíå.
--------------------
“Áóäüòå âíèìàòåëüíû ê ñâîèì ìûñëÿì - îíè íà÷àëî ïîñòóïêîâ” (Ëàî-Öçû)
|
|
|
|
Ñîîáùåíèé â ýòîé òåìå
Atlantis- Íàó÷èòå êðàñèâî äåðãàòü íîæêàìè STM32 Jul 6 2016, 15:40 HardEgor Îïðåäåëèòå ïîíÿòíûå íàçâàíèÿ è èñïîëüçóéòå òîò æå ... Jul 6 2016, 15:57 Ñåðãåé Áîðù Ñèëüíî äîðàáîòàííûå íàïèëüíèêîì ìàêðîñû èìåíè Àñêî... Jul 6 2016, 16:01 ViKo Þçàþ ðåãèñòðû ñáðîñà è óñòàíîâêè, ìîæíî äàæå îäíîâ... Jul 6 2016, 16:49 x893 Öèòàòà(ViKo @ Jul 6 2016, 19:49) Þçàþ ðåã... Jul 6 2016, 18:12 РўРёРјСѓСЂ Ð ÑžÐ Â°Ð Ñ Îïðåäåëÿþ íîæêè è ïîðòû äåôàéíàìè:
Êîä#define IPNU... Jul 6 2016, 18:44 Dog Pawlowa Öèòàòà(Atlantis- @ Jul 6 2016, 18:40... Jul 6 2016, 19:12 turnon Âñÿ ïëàòà îïèñàíà â pinout.h è íàïðèìåð, ñâåòîäèîä... Jul 6 2016, 19:33 Atlantis- Öèòàòà(turnon @ Jul 6 2016, 22:33) Âñÿ ïë... Jul 7 2016, 07:35  turnon Öèòàòà(Atlantis- @ Jul 7 2016, 10:35... Jul 8 2016, 06:16 AlexandrY Öèòàòà(Atlantis- @ Jul 6 2016, 18:40... Jul 6 2016, 19:40 jcxz Öèòàòà(AlexandrY @ Jul 7 2016, 01:40) Íå ... Jul 7 2016, 08:27  demiurg_spb Âñåãäà è íà âñåõ àðõèòåêòóðàõ èñïîëüçóþ ðåøåíèå íà... Jul 7 2016, 10:30 x893 Íà ñõåìå èñïîëüçóþ íàçâàíèÿ âèäà SIGNAL_PIN - íàïð... Jul 6 2016, 20:37 ar__systems Öèòàòà(x893 @ Jul 6 2016, 16:37) Íà ñõåìå... Jul 7 2016, 02:12 esaulenka https://github.com/antongus/stm32tpl - ìàêðîñû Àñê... Jul 7 2016, 06:34 Atlantis- Ïî÷åìó òî íå ïîëó÷àåòñÿ ñäåëàòü ìàêðîñ
Êîä#define ... Jul 7 2016, 14:29 demiurg_spb Öèòàòà(Atlantis- @ Jul 7 2016, 17:29... Jul 7 2016, 15:11     jcxz Öèòàòà(demiurg_spb @ Jul 8 2016, 18:05) È... Jul 8 2016, 16:44      demiurg_spb Öèòàòà(jcxz @ Jul 8 2016, 19:44) È ñîâñåì... Jul 8 2016, 20:00       jcxz Öèòàòà(demiurg_spb @ Jul 9 2016, 02:00) Ã... Jul 8 2016, 21:42        demiurg_spb Öèòàòà(jcxz @ Jul 9 2016, 00:42)
ÈÌÕÎ îä... Jul 8 2016, 22:00         jcxz Öèòàòà(demiurg_spb @ Jul 9 2016, 04:00) È... Jul 10 2016, 07:01       AlexandrY Öèòàòà(demiurg_spb @ Jul 8 2016, 23:00) Í... Jul 10 2016, 08:31        jcxz Öèòàòà(AlexandrY @ Jul 10 2016, 14:31) È ... Jul 10 2016, 09:05         AlexandrY Öèòàòà(jcxz @ Jul 10 2016, 12:05) Ñëèøêîì... Jul 10 2016, 09:50        demiurg_spb Öèòàòà(AlexandrY @ Jul 10 2016, 11:31) È ... Jul 10 2016, 12:23 arhiv6 Âîò ãîòîâàÿ ðåàëèçàöèÿ íà ìàêðîñàõ. Òàì îïèñàíèå +... Jul 8 2016, 16:54
2 ÷åë. ÷èòàþò ýòó òåìó (ãîñòåé: 2, ñêðûòûõ ïîëüçîâàòåëåé: 0)
Ïîëüçîâàòåëåé: 0
|
|
|