[elektro] ARM STM32F100 GPIO 8bites kétirányú használata.

elight elight at gmail.hu
Fri Jul 31 10:32:18 CEST 2015


Köszi,

ennyire még nem mélyedtem el,
de meg fogom nézni.
Makróval egyenlőre nem jött össze,
ezért a vázolt módon írtam egy rövidke függvényt.

Mono 128x64 kijelző,
és egy másik procon már régóta jól működő
függvénytárat portolok át.. De az 8bit regiszteres proci volt.
Olvasni a status bitet olvasom. De ez nem annyira  gond.
Üdv István

2015-07-31 08:21 keltezéssel, hg12345 írta:
> Kérdés lehet e byte-onként címezni a periférai illesztő mezőt, (erre nem emlékszem), de nem nehéz kipróbálni.(szerintem müködhet, mert a DMA  byte-s elérésre is programozható....#define LCD_DATA_OUT     ((uint8_t*) &GPI_ODR)[1] ha működik, akkor is ez egy nem hordozható megoldás :-(hasonlóan az in is működhet Általában a stm32f10x.h végén vannak makrók, pl.: #define MODIFY_REG(REG, CLEARMASK, SETMASK)  WRITE_REG((REG), (((READ_REG(REG)) & (~(CLEARMASK))) | (SETMASK))) Amúgy ha nem akarsz maszkolást akkor még használhatod a SET/ RSET peridéria regiszterek... Milyen LCD-t használsz, hogy vissza kell olvasni a tartalmat?
> elight <elight at gmail.hu> írta:
>> Sziasztok.
>>
>> Hogyan szokták ezt egyszerűen.
>>
>> Bitenként nézve sokat kellene billegetni.
>>
>> Van ilyen mód?
>> Vagy   folyamatosan maszkolni és irányt váltogatni szükséges?
>>
>> Az a gondom, ha pl.  def-elem a felső 8 bitre
>>
>> #define  LCD_DATA_OUT     Hi(GPIO_ODR)
>> #define  LCD_DATA_IN         Hi(GPIO_IDR)
>>
>>
>> a kimenet használatakor az alsó bitek is változnak időnként..
>>
>> LCD_DATA_OUT = 0xBE;
>>
>> tehát arra jutnék ,  word változóba kell tenni és maszkolni kellene talán.
>>
>> De még keresgélem , hogy egyáltalán jó irányban tapogattam a hibát?
>> De ez a gyanus.  Maga az LCD működik, de más out  bit is billen alsó
>> byte-ban,
>> aminek nem lenne szabad
>> Üdv István
>>
>> -----------------------------------------
>>           elektro[-flame|-etc]
> -----------------------------------------
>            elektro[-flame|-etc]



More information about the Elektro mailing list