66#include " programmer.h"
77#include < QDebug>
88
9- #define CDC_DEV_NAME " /dev/ttyACM0"
10- #define CDC_BUF_SIZE 64
9+ #define USB_DEV_NAME " /dev/ttyACM0"
1110
1211#define SERIAL_PORT_SPEED 4000000
1312#define READ_TIMEOUT_MS 100
1615
1716Programmer::Programmer (QObject *parent) : QObject(parent)
1817{
18+ usbDevName = USB_DEV_NAME;
1919}
2020
2121Programmer::~Programmer ()
@@ -26,7 +26,7 @@ Programmer::~Programmer()
2626
2727int Programmer::serialPortConnect ()
2828{
29- serialPort.setPortName (CDC_DEV_NAME );
29+ serialPort.setPortName (usbDevName );
3030 serialPort.setBaudRate (SERIAL_PORT_SPEED);
3131
3232 if (!serialPort.open (QIODevice::ReadWrite))
@@ -65,6 +65,16 @@ bool Programmer::isConnected()
6565 return isConn;
6666}
6767
68+ void Programmer::setUsbDevName (const QString &name)
69+ {
70+ usbDevName = name;
71+ }
72+
73+ QString Programmer::getUsbDevName ()
74+ {
75+ return usbDevName;
76+ }
77+
6878void Programmer::readChipIdCb (int ret)
6979{
7080 emit readChipIdCompleted (ret);
@@ -84,7 +94,7 @@ void Programmer::readChipId(ChipId *chipId)
8494 serialPortDisconnect ();
8595 writeData.clear ();
8696 writeData.append ((const char *)&cmd, sizeof (cmd));
87- reader.init (CDC_DEV_NAME , SERIAL_PORT_SPEED, (uint8_t *)chipId,
97+ reader.init (usbDevName , SERIAL_PORT_SPEED, (uint8_t *)chipId,
8898 sizeof (ChipId), (uint8_t *)writeData.constData (), writeData.size ());
8999 reader.start ();
90100}
@@ -109,7 +119,7 @@ void Programmer::eraseChip(uint32_t addr, uint32_t len)
109119 serialPortDisconnect ();
110120 writeData.clear ();
111121 writeData.append ((const char *)&eraseCmd, sizeof (eraseCmd));
112- reader.init (CDC_DEV_NAME , SERIAL_PORT_SPEED, NULL , 0 ,
122+ reader.init (usbDevName , SERIAL_PORT_SPEED, NULL , 0 ,
113123 (uint8_t *)writeData.constData (), writeData.size ());
114124 reader.start ();
115125}
@@ -132,7 +142,7 @@ void Programmer::readChip(uint8_t *buf, uint32_t addr, uint32_t len)
132142 serialPortDisconnect ();
133143 writeData.clear ();
134144 writeData.append ((const char *)&readCmd, sizeof (readCmd));
135- reader.init (CDC_DEV_NAME , SERIAL_PORT_SPEED, buf, len,
145+ reader.init (usbDevName , SERIAL_PORT_SPEED, buf, len,
136146 (uint8_t *)writeData.constData (), writeData.size ());
137147 reader.start ();
138148}
@@ -151,7 +161,7 @@ void Programmer::writeChip(uint8_t *buf, uint32_t addr, uint32_t len,
151161
152162 /* Serial port object cannot be used in other thread */
153163 serialPortDisconnect ();
154- writer.init (CDC_DEV_NAME , SERIAL_PORT_SPEED, buf, addr, len, pageSize);
164+ writer.init (usbDevName , SERIAL_PORT_SPEED, buf, addr, len, pageSize);
155165 writer.start ();
156166}
157167
@@ -175,7 +185,7 @@ void Programmer::selectChip(uint32_t chipNum)
175185 serialPortDisconnect ();
176186 writeData.clear ();
177187 writeData.append ((const char *)&selectCmd, sizeof (SelectCmd));
178- reader.init (CDC_DEV_NAME , SERIAL_PORT_SPEED, NULL , 0 ,
188+ reader.init (usbDevName , SERIAL_PORT_SPEED, NULL , 0 ,
179189 (uint8_t *)writeData.constData (), writeData.size ());
180190 reader.start ();
181191}
0 commit comments