From: <jo...@us...> - 2008-09-10 13:39:03
|
Revision: 313 http://mspsim.svn.sourceforge.net/mspsim/?rev=313&view=rev Author: joxe Date: 2008-09-10 13:38:45 +0000 (Wed, 10 Sep 2008) Log Message: ----------- fixed usart to not wait two bytes before triggering txready Modified Paths: -------------- mspsim/se/sics/mspsim/core/USART.java mspsim/se/sics/mspsim/platform/esb/ESBGui.java mspsim/tests/cputest.c Modified: mspsim/se/sics/mspsim/core/USART.java =================================================================== --- mspsim/se/sics/mspsim/core/USART.java 2008-09-10 10:37:28 UTC (rev 312) +++ mspsim/se/sics/mspsim/core/USART.java 2008-09-10 13:38:45 UTC (rev 313) @@ -266,12 +266,14 @@ } if (clockSource == MSP430Constants.CLK_ACLK) { if (DEBUG) { - System.out.println(getName() + " Baud rate is: " + cpu.aclkFrq / div); + System.out.println(getName() + " Baud rate is (bps): " + cpu.aclkFrq / div + + " div = " + div); } baudRate = cpu.aclkFrq / div; } else { - if (DEBUG) { - System.out.println(getName() + " Baud rate is: " + cpu.smclkFrq / div); + if (DEBUG) { + System.out.println(getName() + " Baud rate is (bps): " + cpu.smclkFrq / div + + " div = " + div); } baudRate = cpu.smclkFrq / div; } @@ -298,7 +300,7 @@ // This should be used to delay the output of the USART down to the // baudrate! public long ioTick(long cycles) { - if (nextTXReady != -1 && cycles > nextTXReady) { + if (nextTXReady != -1 && cycles >= nextTXReady) { // Ready to transmit new byte! setBitIFG(utxifg); Modified: mspsim/se/sics/mspsim/platform/esb/ESBGui.java =================================================================== --- mspsim/se/sics/mspsim/platform/esb/ESBGui.java 2008-09-10 10:37:28 UTC (rev 312) +++ mspsim/se/sics/mspsim/platform/esb/ESBGui.java 2008-09-10 13:38:45 UTC (rev 313) @@ -248,7 +248,6 @@ } public void keyPressed(KeyEvent key) { -// System.out.println("Key Pressed: " + key.getKeyChar()); if (key.getKeyChar() == 'd') { node.setDebug(!node.getDebug()); } Modified: mspsim/tests/cputest.c =================================================================== --- mspsim/tests/cputest.c 2008-09-10 10:37:28 UTC (rev 312) +++ mspsim/tests/cputest.c 2008-09-10 13:38:45 UTC (rev 313) @@ -284,6 +284,8 @@ static void testTimer() { int i; + unsigned int time; + int result; pos = 0; dint(); /* Select SMCLK (2.4576MHz), clear TAR; This makes the rtimer count @@ -316,6 +318,15 @@ printf("Trigg time %d => %u\n", i + 1, times[i]); assertTrue(times[i] >= t && times[i] < t + 2); } + + printf("Start modulo\n",time = TBR); + result = 47; + for (i = 0; i < 1000; i++) { + result = result + i % 27; + } + printf("Elapsed %i %i\n",TBR - time, result); + + } /*--------------------------------------------------------------------------*/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |