Hallo,
zur Einarbeitung in dem STM32 arbeite ich die verschiednen ST Beispiele
durch und passe Sie an mein Olimex 107er Board an. Es klappt nun nach
ein paar Stunden Einarbeitung und der Softwareupdate über die RS232
Schnittstelle mit AN2557 läuft. Ich bekomme nur über das YModem
Protokoll Daten auf den STM32F107 geschrieben, aber beim upload (read)
bricht er mit Fehlermeldung ab. Hat jmd schon erfolgreich einen upload
hinbekommen? Momentan ist diese Funktion nicht wichtig, weil der
Download (write) einwandfrei funktioniert, aber mich interessiert die
Erfahrung anderer Benutzer.
Bei dem UDM0424 Beispiel (STM32 Virtual Comport) komme ich nicht
wirklich weiter, weil ich ein Teil nicht verstehe. Laut PDF File
fungiert dieses Beispiel als RS232 zu USB Bridge. Ich gebe Daten auf den
RS232 Port oder USB Port und im jeweiligen Fenster soll es angezeigt
werden. Das Beispiel wurde auf den STM32F107VC und Olimex Board
angepasst und wenn die Application startet bekomme ich in meinem Win7
System auch einen neuen COM Port (COM9), aber wenn ich Versuche zwischen
COM1(RS232) und COM9 Daten auszutauschen passiert nix.
Wenn ich mir die Main.c anschaue sollte auch nix passieren, weil die
USART Schnittstelle garnicht konfiguriert wird. In der System_xx.c sind
doch nur Funktionen hinterlegt, aber diese werden nie aufgerufen.
Verstehe ich das Bespiel falsch? Wird der USART wo anders aktiviert und
alles läuft im Interrupt mode?
Main.c (UM0424)
1 | int main(void)
|
2 | {
|
3 | Set_System();
|
4 | Set_USBClock();
|
5 | USB_Interrupts_Config();
|
6 | USB_Init();
|
7 |
|
8 | while (1)
|
9 | {
|
10 | }
|
11 | }
|
Set_System:
/***********************************************************************
********
* Function Name : Set_System
* Description : Configures Main system clocks & power
* Input : None.
* Return : None.
************************************************************************
*******/
Keine USART Konfiguration.
Set_USBClock:
/***********************************************************************
********
* Function Name : Set_USBClock
* Description : Configures USB Clock input (48MHz)
* Input : None.
* Return : None.
************************************************************************
*******/
Keine USART Konfiguration.
USB_Interrupts_Config:
/***********************************************************************
********
* Function Name : USB_Interrupts_Config
* Description : Configures the USB interrupts
* Input : None.
* Return : None.
************************************************************************
*******/
Keine USART Konfiguration.
USB_Init(); finde ich gerade nicht, aber wenn ich mich richtig erinne
wurde da auch kein USART Konfiguriert.
AN2557:
http://read.pudn.com/downloads106/sourcecode/embed/437624/stm32/STM32F%20Documents/Application%20Note/STM32F10xxx%20in-application%20programming%20using%20the%20USART.pdf
UM0424:
http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/USER_MANUAL/CD00158241.pdf
USB Lib:
http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/um0424.zip