OSDN Git Service

svn rev.329より移動。
[chnosproject/CHNOSProject.git] / CHNOSProject / chnos / tolset_chn_000 / chnos_010 / chnos / serial.c
diff --git a/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/serial.c b/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/serial.c
new file mode 100644 (file)
index 0000000..5274714
--- /dev/null
@@ -0,0 +1,32 @@
+\r
+#include "core.h"\r
+\r
+void Initialize_SerialPort(void)\r
+{\r
+       IO_Out8(COM1_CTRL_LINE, 0x80);  //\83{\81[\83\8c\81[\83g\90Ý\92è\8aJ\8en\r
+       IO_Out8(COM1_BAUD_LSB, 0x06);   //0x06 = 19.2bps\r
+       IO_Out8(COM1_CTRL_LINE, 0x03);  //\83{\81[\83\8c\81[\83g\90Ý\92è\8fI\97¹\81A\91\97\8eó\90M\83f\81[\83^8bit\r
+       IO_Out8(COM1_CTRL_MODEM, 0x0b); //\8a\84\82è\8d\9e\82Ý\97L\8cø\81ARTS\81ADTR\83s\83\93\82ð\83A\83N\83e\83B\83u\89»\r
+//     IO_Out8(COM1_INTR_ENBL, 0x04);  //\83\89\83C\83\93\83X\83e\81[\83^\83X\8a\84\82è\8d\9e\82Ý\r
+       IO_Out8(COM1_INTR_ENBL, 0x00);  //\8a\84\82è\8d\9e\82Ý\82È\82µ\r
+\r
+       return;\r
+}\r
+\r
+void SerialPort_Send(const uchar s[])\r
+{\r
+       for (; *s != 0x00; s++){\r
+               if(*s == '\n'){\r
+                       IO_Out8(COM1_TX, '\r');\r
+                       for(; (IO_In8(COM1_STA_LINE) & 0x40) == 0; ){\r
+\r
+                       }\r
+               }\r
+               IO_Out8(COM1_TX, *s);\r
+               for(; (IO_In8(COM1_STA_LINE) & 0x40) == 0; ){\r
+\r
+               }\r
+       }\r
+\r
+       return;\r
+}\r