@@ -160,8 +160,11 @@ int rt_pin_read(rt_base_t pin)
160
160
rt_base_t rt_pin_get (const char * name )
161
161
{
162
162
RT_ASSERT (_hw_pin .ops != RT_NULL );
163
- RT_ASSERT (name [0 ] == 'P' );
164
163
164
+ if (name [0 ] != 'P' && name [0 ] != 'p' )
165
+ {
166
+ return - RT_EINVAL ;
167
+ }
165
168
if (_hw_pin .ops -> pin_get == RT_NULL )
166
169
{
167
170
return - RT_ENOSYS ;
@@ -173,17 +176,15 @@ rt_base_t rt_pin_get(const char *name)
173
176
174
177
static void print_usage (void )
175
178
{
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" );
184
185
}
185
186
186
- /*e.g. MSH >pin num PA16*/
187
+ /* e.g. MSH >pin num PA16 */
187
188
static void pin_get (int argc , char * argv [])
188
189
{
189
190
rt_base_t pin ;
@@ -192,21 +193,17 @@ static void pin_get(int argc, char *argv[])
192
193
print_usage ();
193
194
return ;
194
195
}
195
- if ('P' != argv [2 ][0 ])
196
- {
197
- print_usage ();
198
- return ;
199
- }
200
196
pin = rt_pin_get (argv [2 ]);
201
197
if (pin < 0 )
202
198
{
203
199
rt_kprintf ("Parameter invalid : %s!\n" , argv [2 ]);
200
+ print_usage ();
204
201
return ;
205
202
}
206
203
rt_kprintf ("%s : %d\n" , argv [2 ], pin );
207
204
}
208
205
209
- /*e.g. MSH >pin mode PA16 output*/
206
+ /* e.g. MSH >pin mode PA16 output */
210
207
static void pin_mode (int argc , char * argv [])
211
208
{
212
209
rt_base_t pin ;
@@ -218,15 +215,11 @@ static void pin_mode(int argc, char *argv[])
218
215
}
219
216
if (!msh_isint (argv [2 ]))
220
217
{
221
- if ('P' != argv [2 ][0 ])
222
- {
223
- print_usage ();
224
- return ;
225
- }
226
218
pin = rt_pin_get (argv [2 ]);
227
219
if (pin < 0 )
228
220
{
229
221
rt_kprintf ("Parameter invalid : %s!\n" , argv [2 ]);
222
+ print_usage ();
230
223
return ;
231
224
}
232
225
}
@@ -263,7 +256,7 @@ static void pin_mode(int argc, char *argv[])
263
256
rt_pin_mode (pin , mode );
264
257
}
265
258
266
- /*e.g. MSH >pin read PA16*/
259
+ /* e.g. MSH >pin read PA16 */
267
260
static void pin_read (int argc , char * argv [])
268
261
{
269
262
rt_base_t pin ;
@@ -275,15 +268,11 @@ static void pin_read(int argc, char *argv[])
275
268
}
276
269
if (!msh_isint (argv [2 ]))
277
270
{
278
- if ('P' != argv [2 ][0 ])
279
- {
280
- print_usage ();
281
- return ;
282
- }
283
271
pin = rt_pin_get (argv [2 ]);
284
272
if (pin < 0 )
285
273
{
286
274
rt_kprintf ("Parameter invalid : %s!\n" , argv [2 ]);
275
+ print_usage ();
287
276
return ;
288
277
}
289
278
}
@@ -302,7 +291,7 @@ static void pin_read(int argc, char *argv[])
302
291
}
303
292
}
304
293
305
- /*e.g. MSH >pin write PA16 high*/
294
+ /* e.g. MSH >pin write PA16 high */
306
295
static void pin_write (int argc , char * argv [])
307
296
{
308
297
rt_base_t pin ;
@@ -314,15 +303,11 @@ static void pin_write(int argc, char *argv[])
314
303
}
315
304
if (!msh_isint (argv [2 ]))
316
305
{
317
- if ('P' != argv [2 ][0 ])
318
- {
319
- print_usage ();
320
- return ;
321
- }
322
306
pin = rt_pin_get (argv [2 ]);
323
307
if (pin < 0 )
324
308
{
325
309
rt_kprintf ("Parameter invalid : %s!\n" , argv [2 ]);
310
+ print_usage ();
326
311
return ;
327
312
}
328
313
}
0 commit comments