人行地区代码一览表_全国各地区代码.

该博客提供了全国各地区的人行代码,涵盖了北京市、天津市、河北省、山西省等省市,详细列出了省市、市辖区、县等不同层级的地区代码,为相关信息查询提供了便利。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1

全国各地区代码

110000

北京市

110100

市辖区

110101

东城区

110102

西城区

110105

朝阳区

110106

丰台区

110107

石景山区

110108

海淀区

110109

门头沟区

110111

房山区

110112

通州区

110113

顺义区

110114

昌平区

110115

大兴区

110116

怀柔区

110117

平谷区

110200

110228

密云县

110229

延庆县

120000

天津市

120100

市辖区

120101

和平区

120102

河东区

120103

河西区

120104

南开区

120105

河北区

120106

红桥区

120110

东丽区

120111

西青区

120112

津南区

120113

北辰区

120114

武清区

120115

宝坻区

120116

滨海新区

120200

120221

宁河县

120223

静海县

120225

蓟县

130000

河北省

130100

石家庄市

130101

市辖区

130102

长安区

130103

桥东区

130104

桥西区

130105

新华区

130107

井陉矿区

130108

裕华区

130121

井陉县

130123

正定县

130124

栾城县

130125

行唐县

130126

灵寿县

130127

高邑县

130128

深泽县

130129

赞皇县

130130

无极县

130131

平山县

130132

元氏县

130133

赵县

130181

辛集市

130182

藁城市

130183

晋州市

130184

新乐市

130185

鹿泉市

130200

唐山市

130201

市辖区

130202

路南区

130203

路北区

130204

古冶区

130205

开平区

130207

丰南区

130208

丰润区

130223

滦县

130224

滦南县

130225

乐亭县

130227

迁西县

130229

玉田县

130230

唐海县

130281

遵化市

130283

迁安市

130300

秦皇岛市

130301

市辖区

130302

海港区

130303

山海关区

130304

北戴河区

130321

青龙满族自治

130322

昌黎县

130323

抚宁县

130324

卢龙县

130400

邯郸市

130401

市辖区

130402

邯山区

130403

丛台区

130404

复兴区

130406

峰峰矿区

130421

邯郸县

130423

临漳县

130424

成安县

130425

大名县

130426

涉县

130427

磁县

130428

肥乡县

130429

永年县

130430

邱县

130431

鸡泽县

130432

广平县

130433

馆陶县

130434

魏县

130435

曲周县

130481

武安市

130500

邢台市

130501

市辖区

130502

桥东区

130503

桥西区

130521

邢台县

130522

临城县

130523

内丘县

130524

柏乡县

130525

隆尧县

130526

任县

130527

南和县

130528

宁晋县

130529

巨鹿县

130530

新河县

130531

广宗县

130532

平乡县

130533

威县

130534

清河县

130535

临西县

130581

南宫市

130582

沙河市

130600

保定市

130601

市辖区

130602

新市区

130603

北市区

130604

南市区

130621

满城县

130622

清苑县

130623

涞水县

130624

阜平县

130625

徐水县

130626

定兴县

130627

唐县

130628

高阳县

130629

容城县

130630

涞源县

130631

望都县

130632

安新县

130633

易县

130634

曲阳县

130635

蠡县

130636

顺平县

130637

博野县

130638

雄县

130681

涿州市

130682

定州市

130683

安国市

130684

高碑店市

130700

张家口市

130701

市辖区

130702

桥东区

130703

桥西区

130705

宣化区

130706

下花园区

130721

宣化县

130722

张北县

130723

康保县

130724

沽源县

130725

尚义县

130726

蔚县

130727

阳原县

130728

怀安县

130729

万全县

130730

怀来县

130731

涿鹿县

130732

赤城县

130733

崇礼县

130800

承德市

130801

市辖区

130802

双桥区

130803

双滦区

130804

鹰手营子矿区

130821

承德县

130822

兴隆县

130823

平泉县

130824

滦平县

130825

隆化县

130826

丰宁满族自治

130827

宽城满族自治

130828

围场满族蒙古

族自治县

130900

沧州市

130901

市辖区

130902

新华区

130903

运河区

130921

沧县

130922

青县

130923

东光县

130924

海兴县

130925

盐山县

130926

肃宁县

130927

南皮县

130928

吴桥县

130929

献县

130930

孟村回族自治

130981

泊头市

130982

任丘市

130983

黄骅市

130984

河间市

131000

廊坊市

131001

市辖区

131002

安次区

131003

广阳区

131022

固安县

131023

永清县

131024

香河县

131025

大城县

131026

文安县

131028

大厂回族自治

131081

霸州市

131082

三河市

131100

衡水市

131101

市辖区

131102

桃城区

131121

枣强县

131122

武邑县

131123

武强县

131124

饶阳县

131125

安平县

131126

故城县

131127

景县

131128

阜城县

131181

冀州市

131182

深州市

140000

山西省

140100

太原市

140101

市辖区

140105

小店区

140106

迎泽区

140107

杏花岭区

140108

尖草坪区

140109

万柏林区

<think>好的,用户现在问的是“人行代码”,之前他们问过完整的交通灯控制代码,现在可能想要扩展那个项目,添加行人过街的功能。我需要先回顾之前的对话,确保回答的一致性。 用户之前得到的是基于STM32CubeIDE的交通灯代码,包含红黄绿灯的控制和闪烁功能。现在他们可能需要类似的代码,但针对人行道的信号控制,可能包括按钮请求过街、倒计时显示等。 首先,我得确定用户的具体需求。人行代码通常包括行人信号灯(通常是红绿两色)和一个按钮,行人按下按钮后,车辆信号灯会变化,允许行人过街。需要处理按钮输入、与主交通灯的协调,可能还有防抖和倒计时显示。 用户可能没有明确提到硬件细节,比如使用哪种单片机,但之前的代码是STM32F1系列,所以应该沿用相同的平台,保持兼容性。需要确保代码结构清晰,有详细注释,方便用户理解。 需要考虑到行人按钮的防抖处理,防止误触发。可能使用中断或轮询方式,但中断更高效。另外,行人绿灯的持续时间需要合理设置,可能有固定的时间或者根据交通情况调整,但用户可能只需要基本功能,所以固定时间即可。 倒计时显示可能需要用到七段数码管或LCD,但用户可能希望简化,先用LED表示,或者后续扩展。在示例代码中,可能先实现基本的LED控制,稍后再添加显示部分。 另外,行人请求后,车辆交通灯需要进入黄灯闪烁,然后红灯,同时行人绿灯亮起。需要状态机来处理不同的阶段,比如正常车辆通行、响应行人请求、行人通过阶段等。 需要检查之前的交通灯代码的状态机结构,确保人行代码能与之协调。可能需要修改主循环,添加处理行人请求的逻辑,并管理各个状态的转换。 安全性方面,要确保行人绿灯期间车辆红灯,并且有足够的缓冲时间(比如行人绿灯闪烁提醒)。同时,按钮可能需要防重复触发,避免多次请求干扰系统。 最后,代码需要包含必要的初始化和配置,比如GPIO设置,中断配置,定时器的使用等。可能需要使用定时器中断来处理倒计时,而不是用阻塞式的HAL_Delay,以提高系统的响应性。 总结步骤:1. 定义硬件连接;2. 处理按钮输入(防抖,中断);3. 管理行人信号灯状态;4. 与主交通灯协调;5. 实现倒计时和闪烁;6. 确保代码结构清晰,注释详细。</think>以下是一个基于STM32的行人道交通灯控制代码实现,包含行人请求按钮、倒计时显示和信号灯协调功能: ```c /* main.c - 带行人过街功能的交通灯系统 */ #include "main.h" #include "stm32f1xx_hal.h" /* 硬件定义 */ #define CAR_RED_PIN GPIO_PIN_0 #define CAR_YELLOW_PIN GPIO_PIN_1 #define CAR_GREEN_PIN GPIO_PIN_2 #define PED_RED_PIN GPIO_PIN_3 #define PED_GREEN_PIN GPIO_PIN_4 #define BTN_PIN GPIO_PIN_5 #define LED_PORT GPIOA /* 时间参数(单位:秒) */ #define CAR_GREEN_DURATION 20 #define PED_WALK_TIME 15 #define BLINK_INTERVAL 500 // 毫秒 /* 全局变量 */ volatile uint8_t ped_request = 0; // 行人请求标志 uint8_t countdown = 0; void SystemClock_Config(void); static void MX_GPIO_Init(void); static void MX_EXTI_Init(void); int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); MX_EXTI_Init(); // 初始状态:车辆绿灯,行人红灯 HAL_GPIO_WritePin(LED_PORT, CAR_GREEN_PIN | PED_RED_PIN, GPIO_PIN_RESET); HAL_GPIO_WritePin(LED_PORT, CAR_RED_PIN | CAR_YELLOW_PIN | PED_GREEN_PIN, GPIO_PIN_SET); while (1) { if(ped_request) { /* 车辆黄灯闪烁 */ for(uint8_t i=0; i<5; i++) { HAL_GPIO_TogglePin(LED_PORT, CAR_YELLOW_PIN); HAL_Delay(BLINK_INTERVAL); } /* 车辆红灯 + 行人绿灯 */ HAL_GPIO_WritePin(LED_PORT, CAR_GREEN_PIN, GPIO_PIN_SET); HAL_GPIO_WritePin(LED_PORT, CAR_RED_PIN, GPIO_PIN_RESET); HAL_GPIO_WritePin(LED_PORT, PED_RED_PIN, GPIO_PIN_SET); HAL_GPIO_WritePin(LED_PORT, PED_GREEN_PIN, GPIO_PIN_RESET); /* 行人绿灯倒计时 */ for(countdown=PED_WALK_TIME; countdown>0; countdown--) { if(countdown <= 3) { // 最后3秒闪烁 HAL_GPIO_TogglePin(LED_PORT, PED_GREEN_PIN); } HAL_Delay(1000); } /* 恢复初始状态 */ HAL_GPIO_WritePin(LED_PORT, CAR_RED_PIN, GPIO_PIN_SET); HAL_GPIO_WritePin(LED_PORT, CAR_GREEN_PIN, GPIO_PIN_RESET); HAL_GPIO_WritePin(LED_PORT, PED_GREEN_PIN, GPIO_PIN_SET); HAL_GPIO_WritePin(LED_PORT, PED_RED_PIN, GPIO_PIN_RESET); ped_request = 0; } HAL_Delay(CAR_GREEN_DURATION * 1000); } } /* 外部中断回调函数(按钮触发) */ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) { if(GPIO_Pin == BTN_PIN) { // 简单防抖处理 HAL_Delay(50); if(HAL_GPIO_ReadPin(LED_PORT, BTN_PIN) == GPIO_PIN_RESET) { ped_request = 1; } } } /* GPIO初始化 */ void MX_GPIO_Init(void) { __HAL_RCC_GPIOA_CLK_ENABLE(); GPIO_InitTypeDef GPIO_InitStruct = {0}; // 车辆信号灯 GPIO_InitStruct.Pin = CAR_RED_PIN | CAR_YELLOW_PIN | CAR_GREEN_PIN; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(LED_PORT, &GPIO_InitStruct); // 行人信号灯 GPIO_InitStruct.Pin = PED_RED_PIN | PED_GREEN_PIN; HAL_GPIO_Init(LED_PORT, &GPIO_InitStruct); // 按钮输入 GPIO_InitStruct.Pin = BTN_PIN; GPIO_InitStruct.Mode = GPIO_MODE_INPUT; GPIO_InitStruct.Pull = GPIO_PULLUP; HAL_GPIO_Init(LED_PORT, &GPIO_InitStruct); } /* EXTI中断配置 */ void MX_EXTI_Init(void) { EXTI_ConfigTypeDef extiConfig = {0}; extiConfig.Line = EXTI_LINE_5; extiConfig.Mode = EXTI_MODE_INTERRUPT; extiConfig.Trigger = EXTI_TRIGGER_FALLING; // 按钮接地触发 extiConfig.GPIOSel = EXTI_GPIOA; HAL_EXTI_SetConfigLine(&hexti5, &extiConfig); HAL_NVIC_SetPriority(EXTI9_5_IRQn, 0, 0); HAL_NVIC_EnableIRQ(EXTI9_5_IRQn); } ``` **系统工作原理:** 1. **状态流程图** ```mermaid graph TD A[车辆绿灯,行人红灯] --> B{行人按钮触发?} B -->|否| A B -->|是| C[车辆黄灯闪烁5秒] C --> D[车辆红灯,行人绿灯15秒] D --> E{倒计时≤3秒?} E -->|是| F[行人绿灯闪烁] E -->|否| D F --> G[恢复初始状态] G --> A ``` 2. **关键技术点** - **按钮防抖**:通过`HAL_Delay(50)`实现简单硬件防抖 - **信号协调**:使用状态标志`ped_request`实现车流/人流切换 - **倒计时算法**: $$ t_{remaining} = t_{total} - \lfloor \frac{t_{elapsed}}{1000} \rfloor $$ - **功耗优化**:实际工程中可添加`__WFI()`指令进入低功耗模式 3. **扩展功能建议** ```c // 添加蜂鸣器提示(接线至PB0) #define BUZZER_PIN GPIO_PIN_0 #define BUZZER_PORT GPIOB // 在行人绿灯阶段添加提示音 void beep(uint8_t times) { for(; times>0; times--) { HAL_GPIO_WritePin(BUZZER_PORT, BUZZER_PIN, GPIO_PIN_SET); HAL_Delay(200); HAL_GPIO_WritePin(BUZZER_PORT, BUZZER_PIN, GPIO_PIN_RESET); HAL_Delay(200); } } // 在倒计时循环中添加: if(countdown <= 3) { beep(1); // 每秒蜂鸣一次 } ``` **硬件连接参考:** ``` STM32F103C8T6 +------------+ PA0 |-> CAR_RED | PA1 |-> CAR_YELLOW PA2 |-> CAR_GREEN PA3 |-> PED_RED | PA4 |-> PED_GREEN| PA5 |<- BUTTON | +------------+ ``` **注意事项:** 1. 信号灯驱动能力: $$ I_{LED} = \frac{V_{CC} - V_{LED}}{R_{limit}} $$ 建议使用470Ω限流电阻(假设$V_{CC}=3.3V$, $V_{LED}=2.1V$) 2. 按钮电路建议采用RC滤波: $$ \tau = R \times C \geq 10ms $$ 典型值:$R=10k\Omega$, $C=1\mu F$ 3. 实际部署时应添加看门狗定时器: ```c IWDG_HandleTypeDef hiwdg; void Init_IWDG(void) { hiwdg.Instance = IWDG; hiwdg.Init.Prescaler = IWDG_PRESCALER_256; hiwdg.Init.Reload = 0xFFF; HAL_IWDG_Init(&hiwdg); } // 在主循环中定期喂狗 HAL_IWDG_Refresh(&hiwdg); ``` 该代码实现了行人过街的基本功能,可通过STM32CubeMX生成基础工程后整合使用。建议使用示波器验证时序精度,实际误差应小于$1\%$。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值