Skip to content

Commit 3c50268

Browse files
authored
Merge pull request #2 from mysterywolf/origin_master
update codes
2 parents b26324d + bf2a8b5 commit 3c50268

File tree

2 files changed

+19
-33
lines changed

2 files changed

+19
-33
lines changed

bsp/stm32/libraries/HAL_Drivers/drv_gpio.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ static uint32_t pin_irq_enable_mask = 0;
161161

162162
#define ITEM_NUM(items) sizeof(items) / sizeof(items[0])
163163

164+
/* e.g. PE.7 */
164165
static rt_base_t stm32_pin_get(const char *name)
165166
{
166167
rt_base_t pin = 0;

components/drivers/misc/pin.c

Lines changed: 18 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,11 @@ int rt_pin_read(rt_base_t pin)
160160
rt_base_t rt_pin_get(const char *name)
161161
{
162162
RT_ASSERT(_hw_pin.ops != RT_NULL);
163-
RT_ASSERT(name[0] == 'P');
164163

164+
if (name[0] != 'P' && name[0] != 'p')
165+
{
166+
return -RT_EINVAL;
167+
}
165168
if (_hw_pin.ops->pin_get == RT_NULL)
166169
{
167170
return -RT_ENOSYS;
@@ -173,17 +176,15 @@ rt_base_t rt_pin_get(const char *name)
173176

174177
static void print_usage(void)
175178
{
176-
rt_kprintf("\npin operate command\n");
177-
rt_kprintf("Usage : pin [option] [pin_num] ...\n");
178-
rt_kprintf("option : \n");
179-
rt_kprintf("\tnum\t: get pin number from hardware pin, \n\t\t e.g. MSH >pin num PA16\n");
180-
rt_kprintf("\tmode\t: set pin mode to output/input/input_pullup/input_pulldown/output_od, \n\t\t e.g. MSH >pin mode PA16 output\n");
181-
rt_kprintf("\tread\t: read pin level of hardware pin, \n\t\t e.g. MSH >pin read PA16\n");
182-
rt_kprintf("\twrite\t: write pin level(high/low or on/off) to hardware pin, \n\t\t e.g. MSH >pin write PA16 high\n");
183-
rt_kprintf("\thelp\t: this help list\n");
179+
rt_kprintf("pin [option]\n");
180+
rt_kprintf(" num: get pin number from hardware pin\n e.g. MSH >pin num PA16\n");
181+
rt_kprintf(" mode: set pin mode to output/input/input_pullup/input_pulldown/output_od\n e.g. MSH >pin mode PA16 output\n");
182+
rt_kprintf(" read: read pin level of hardware pin\n e.g. MSH >pin read PA16\n");
183+
rt_kprintf(" write: write pin level(high/low or on/off) to hardware pin\n e.g. MSH >pin write PA16 high\n");
184+
rt_kprintf(" help: this help list\n");
184185
}
185186

186-
/*e.g. MSH >pin num PA16*/
187+
/* e.g. MSH >pin num PA16 */
187188
static void pin_get(int argc, char *argv[])
188189
{
189190
rt_base_t pin;
@@ -192,21 +193,17 @@ static void pin_get(int argc, char *argv[])
192193
print_usage();
193194
return;
194195
}
195-
if ('P' != argv[2][0])
196-
{
197-
print_usage();
198-
return;
199-
}
200196
pin = rt_pin_get(argv[2]);
201197
if (pin < 0)
202198
{
203199
rt_kprintf("Parameter invalid : %s!\n", argv[2]);
200+
print_usage();
204201
return ;
205202
}
206203
rt_kprintf("%s : %d\n", argv[2], pin);
207204
}
208205

209-
/*e.g. MSH >pin mode PA16 output*/
206+
/* e.g. MSH >pin mode PA16 output */
210207
static void pin_mode(int argc, char *argv[])
211208
{
212209
rt_base_t pin;
@@ -218,15 +215,11 @@ static void pin_mode(int argc, char *argv[])
218215
}
219216
if (!msh_isint(argv[2]))
220217
{
221-
if ('P' != argv[2][0])
222-
{
223-
print_usage();
224-
return;
225-
}
226218
pin = rt_pin_get(argv[2]);
227219
if (pin < 0)
228220
{
229221
rt_kprintf("Parameter invalid : %s!\n", argv[2]);
222+
print_usage();
230223
return;
231224
}
232225
}
@@ -263,7 +256,7 @@ static void pin_mode(int argc, char *argv[])
263256
rt_pin_mode(pin, mode);
264257
}
265258

266-
/*e.g. MSH >pin read PA16*/
259+
/* e.g. MSH >pin read PA16 */
267260
static void pin_read(int argc, char *argv[])
268261
{
269262
rt_base_t pin;
@@ -275,15 +268,11 @@ static void pin_read(int argc, char *argv[])
275268
}
276269
if (!msh_isint(argv[2]))
277270
{
278-
if ('P' != argv[2][0])
279-
{
280-
print_usage();
281-
return;
282-
}
283271
pin = rt_pin_get(argv[2]);
284272
if (pin < 0)
285273
{
286274
rt_kprintf("Parameter invalid : %s!\n", argv[2]);
275+
print_usage();
287276
return;
288277
}
289278
}
@@ -302,7 +291,7 @@ static void pin_read(int argc, char *argv[])
302291
}
303292
}
304293

305-
/*e.g. MSH >pin write PA16 high*/
294+
/* e.g. MSH >pin write PA16 high */
306295
static void pin_write(int argc, char *argv[])
307296
{
308297
rt_base_t pin;
@@ -314,15 +303,11 @@ static void pin_write(int argc, char *argv[])
314303
}
315304
if (!msh_isint(argv[2]))
316305
{
317-
if ('P' != argv[2][0])
318-
{
319-
print_usage();
320-
return;
321-
}
322306
pin = rt_pin_get(argv[2]);
323307
if (pin < 0)
324308
{
325309
rt_kprintf("Parameter invalid : %s!\n", argv[2]);
310+
print_usage();
326311
return;
327312
}
328313
}

0 commit comments

Comments
 (0)